aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorFritz Reese <foreese@gcc.gnu.org>2016-09-23 13:31:37 +0000
committerFritz Reese <foreese@gcc.gnu.org>2016-09-23 13:31:37 +0000
commit30faeb0f99e8618739217ff3efa930cc382d8448 (patch)
tree406e76c8c8ab0da9a6407d8f1a679b38ccd97a96 /gcc
parent113d06a486475c8c1682771a392fdb056685cf01 (diff)
downloadgcc-30faeb0f99e8618739217ff3efa930cc382d8448.zip
gcc-30faeb0f99e8618739217ff3efa930cc382d8448.tar.gz
gcc-30faeb0f99e8618739217ff3efa930cc382d8448.tar.bz2
Really commit testcase intended for r240230.
2016-09-23 Fritz Reese <fritzoreese@gmail.com> Really commit testcase intended for r240230. * gcc/testsuite/gfortran.dg/dec_structure_15.f90: Really commit. From-SVN: r240433
Diffstat (limited to 'gcc')
-rw-r--r--gcc/testsuite/gfortran.dg/dec_structure_15.f9027
1 files changed, 27 insertions, 0 deletions
diff --git a/gcc/testsuite/gfortran.dg/dec_structure_15.f90 b/gcc/testsuite/gfortran.dg/dec_structure_15.f90
new file mode 100644
index 0000000..fd06ff9
--- /dev/null
+++ b/gcc/testsuite/gfortran.dg/dec_structure_15.f90
@@ -0,0 +1,27 @@
+! { dg-do "compile" }
+! { dg-options "" }
+!
+! PR fortran/77584
+! Regression where "structure" and "record" greedily matched a
+! declaration-type-spec in a procedure-declaration-statement (R1212).
+!
+module dec_structure_15
+ abstract interface
+ double precision function structure_()
+ end function structure_
+ end interface
+ abstract interface
+ double precision function record_()
+ end function record_
+ end interface
+contains
+ double precision function a()
+ procedure(structure_), pointer :: b ! regression: Unclassifiable statement
+ a = 0.0
+ end function
+ double precision function a2()
+ procedure(record_), pointer :: b ! regression: Unclassifiable statement
+ a2 = 0.0
+ end function
+end module
+! { dg-final { cleanup-modules "dec_structure_15" } }