diff options
author | kargl <kargl@138bc75d-0d04-0410-961f-82ee72b054a4> | 2016-10-23 21:26:44 +0000 |
---|---|---|
committer | kargl <kargl@138bc75d-0d04-0410-961f-82ee72b054a4> | 2016-10-23 21:26:44 +0000 |
commit | a484f6fec945c3ef1661e57ae8b20a6616fb2925 (patch) | |
tree | 501edd9e0e5acc6d7b9e5e726b33ca6124222dcb | |
parent | 75a0b541afb725392dd02950f4d1d9eff0b04fbf (diff) | |
download | gcc-a484f6fec945c3ef1661e57ae8b20a6616fb2925.tar.gz |
2016-10-23 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/77763
* parse.c (parse_spec): Allow STRUCTURE in BLOCK DATA. Sort
case labels.
2016-10-23 Steven G. Kargl <kargl@gcc.gnu.org>
PR fortran/77763
* gfortran.dg/pr77763.f90
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@241454 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/fortran/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/fortran/parse.c | 11 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/pr77763.f90 | 6 |
4 files changed, 23 insertions, 5 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 0931104b740..ef49d6f09ef 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,5 +1,11 @@ 2016-10-23 Steven G. Kargl <kargl@gcc.gnu.org> + PR fortran/77763 + * parse.c (parse_spec): Allow STRUCTURE in BLOCK DATA. Sort + case labels. + +2016-10-23 Steven G. Kargl <kargl@gcc.gnu.org> + PR fortran/54730 PR fortran/78033 * array.c (gfc_match_array_constructor): Remove checkpointing diff --git a/gcc/fortran/parse.c b/gcc/fortran/parse.c index 73cb0dbdaf9..03234358547 100644 --- a/gcc/fortran/parse.c +++ b/gcc/fortran/parse.c @@ -3588,17 +3588,18 @@ loop: /* Fortran 2008, C1116. */ switch (st) { - case ST_DATA_DECL: + case ST_ATTR_DECL: case ST_COMMON: case ST_DATA: - case ST_TYPE: + case ST_DATA_DECL: + case ST_DERIVED_DECL: case ST_END_BLOCK_DATA: - case ST_ATTR_DECL: case ST_EQUIVALENCE: - case ST_PARAMETER: case ST_IMPLICIT: case ST_IMPLICIT_NONE: - case ST_DERIVED_DECL: + case ST_PARAMETER: + case ST_STRUCTURE_DECL: + case ST_TYPE: case ST_USE: break; diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 6d2c80f372b..35da701d7ea 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,5 +1,10 @@ 2016-10-23 Steven G. Kargl <kargl@gcc.gnu.org> + PR fortran/77763 + * gfortran.dg/pr77763.f90 + +2016-10-23 Steven G. Kargl <kargl@gcc.gnu.org> + PR fortran/54730 PR fortran/78033 * gfortran.dg/pr78033.f90: New test. diff --git a/gcc/testsuite/gfortran.dg/pr77763.f90 b/gcc/testsuite/gfortran.dg/pr77763.f90 new file mode 100644 index 00000000000..b48dc988601 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/pr77763.f90 @@ -0,0 +1,6 @@ +! { dg-do compile } +! { dg-options "-fdec" } +block data + structure /s1/ + end structure +end block data |