diff options
author | Thomas Koenig <tkoenig@gcc.gnu.org> | 2019-04-14 20:15:48 +0000 |
---|---|---|
committer | Thomas Koenig <tkoenig@gcc.gnu.org> | 2019-04-14 20:15:48 +0000 |
commit | ceae614e1debf582340fe73ca350db93966b24bb (patch) | |
tree | 8057aa8c1c53759e4af93633838a90533caeec60 /gcc | |
parent | 0d78e4aa06db041ef895c7153c1380baff53e434 (diff) | |
download | gcc-ceae614e1debf582340fe73ca350db93966b24bb.zip gcc-ceae614e1debf582340fe73ca350db93966b24bb.tar.gz gcc-ceae614e1debf582340fe73ca350db93966b24bb.tar.bz2 |
re PR fortran/85448 (Report binding label clash with a global identifyer)
2019-04-14 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/85448
* gfortran.dg/bind_c_usage_33.f90: New test and...
* gfortran.dg/bind_c_usage_33_c.c: Additional source.
From-SVN: r270354
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/bind_c_usage_33.f90 | 21 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/bind_c_usage_33_c.c | 15 |
3 files changed, 42 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 4ede1de..0c4ae15 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2019-04-14 Thomas Koenig <tkoenig@gcc.gnu.org> + + PR fortran/85448 + * gfortran.dg/bind_c_usage_33.f90: New test and... + * gfortran.dg/bind_c_usage_33_c.c: Additional source. + 2019-04-14 Paul Thomas <pault@gcc.gnu.org> PR fortran/89843 diff --git a/gcc/testsuite/gfortran.dg/bind_c_usage_33.f90 b/gcc/testsuite/gfortran.dg/bind_c_usage_33.f90 new file mode 100644 index 0000000..62571e4 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/bind_c_usage_33.f90 @@ -0,0 +1,21 @@ +! { dg-do run } +! { dg-additional-sources bind_c_usage_33_c.c } +module m1 + implicit none + contains + subroutine odopen(unit) + integer,intent(out) :: unit + unit=8 + end subroutine +end module + +module m2 + use iso_c_binding + use m1 + implicit none + contains + subroutine c_odopen(unit) bind(c,name="odopen") + integer(c_int),intent(out) :: unit + call odopen(unit) + end subroutine +end module diff --git a/gcc/testsuite/gfortran.dg/bind_c_usage_33_c.c b/gcc/testsuite/gfortran.dg/bind_c_usage_33_c.c new file mode 100644 index 0000000..de09b51 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/bind_c_usage_33_c.c @@ -0,0 +1,15 @@ +#include <stdio.h> + +void odopen(int*); + +int main() +{ + int unit = 42; + odopen(&unit); + if (unit != 8) + { + fprintf(stderr,"wrong result"); + return 1; + } + return 0; +} |