summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gfortran.dg/c_loc_tests_13.f90
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/gfortran.dg/c_loc_tests_13.f90')
-rw-r--r--gcc/testsuite/gfortran.dg/c_loc_tests_13.f9016
1 files changed, 16 insertions, 0 deletions
diff --git a/gcc/testsuite/gfortran.dg/c_loc_tests_13.f90 b/gcc/testsuite/gfortran.dg/c_loc_tests_13.f90
new file mode 100644
index 000000000..62bfe0a3c
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/c_loc_tests_13.f90
@@ -0,0 +1,16 @@
+! { dg-do compile }
+!
+! PR fortran/38536
+! Consecutive array and substring references rejected as C_LOC argument
+!
+! contributed by Scot Breitenfield <brtnfld@hdfgroup.org>
+
+ USE ISO_C_BINDING
+ TYPE test
+ CHARACTER(LEN=2), DIMENSION(1:2) :: c
+ END TYPE test
+ TYPE(test), TARGET :: chrScalar
+ TYPE(C_PTR) :: f_ptr
+
+ f_ptr = C_LOC(chrScalar%c(1)(1:1))
+ END