summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gfortran.dg/use_rename_3.f90
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/gfortran.dg/use_rename_3.f90')
-rw-r--r--gcc/testsuite/gfortran.dg/use_rename_3.f9035
1 files changed, 35 insertions, 0 deletions
diff --git a/gcc/testsuite/gfortran.dg/use_rename_3.f90 b/gcc/testsuite/gfortran.dg/use_rename_3.f90
new file mode 100644
index 000000000..9f28e2ee7
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/use_rename_3.f90
@@ -0,0 +1,35 @@
+! { dg-do compile }
+! Tests the fix for PR35997, in which the use association of renamed
+! valid2 and flag2 was treated as if the renaming were done on use
+! association in the main program. Thus, the following, direct use
+! association of valid and flag did not occur.
+!
+! Contributed by Drew McCormack <drewmccormack@mac.com>
+!
+module funcinterfacemod
+ interface
+ logical function valid ()
+ end function
+ end interface
+ logical :: flag = .true.
+end module
+
+module secondmod
+ use funcinterfacemod, valid2 => valid, flag2 => flag
+end module
+
+logical function valid ()
+ valid = .true.
+end function
+
+program main
+ use secondmod
+ use funcinterfacemod
+ if (valid ()) then
+ print *, 'Is Valid'
+ endif
+ if (flag) then
+ print *, 'Is flag'
+ endif
+end program
+! { dg-final { cleanup-modules "funcinterfacemod secondmod" } }