summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gfortran.dg/namelist_29.f90
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/gfortran.dg/namelist_29.f90')
-rw-r--r--gcc/testsuite/gfortran.dg/namelist_29.f9020
1 files changed, 20 insertions, 0 deletions
diff --git a/gcc/testsuite/gfortran.dg/namelist_29.f90 b/gcc/testsuite/gfortran.dg/namelist_29.f90
new file mode 100644
index 000000000..55bff0c90
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/namelist_29.f90
@@ -0,0 +1,20 @@
+! { dg-do run }
+! Checks the fix for PR30878, in which the inclusion
+! of an implicit function result variable in a namelist
+! would cause an error.
+!
+! Contributed by Joost VandeVondele <jv244@cam.ac.uk>
+!
+ character(80) :: buffer
+ if (f1 (buffer) .ne. 42) call abort ()
+CONTAINS
+ INTEGER FUNCTION F1 (buffer)
+ NAMELIST /mynml/ F1
+ integer :: check
+ character(80) :: buffer
+ F1 = 42
+ write (buffer, nml = mynml)
+ F1 = 0
+ READ (buffer, nml = mynml)
+ end function
+END