https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94397
--- Comment #12 from CVS Commits <cvs-commit at gcc dot gnu.org> --- The releases/gcc-9 branch has been updated by Mark Eggleston <markeggles...@gcc.gnu.org>: https://gcc.gnu.org/g:e211b3da3899b3496add56ba45acb07569e7c15a commit r9-8632-ge211b3da3899b3496add56ba45acb07569e7c15a Author: Mark Eggleston <markeggles...@gcc.gnu.org> Date: Wed Apr 1 09:52:41 2020 +0100 Fortran : "type is( real(kind(1.)) )" spurious syntax error PR94397 Based on a patch in the comments of the PR. That patch fixed this problem but caused the test cases for PR93484 to fail. It has been changed to reduce initialisation expressions if the expression is not EXPR_VARIABLE and not EXPR_CONSTANT. 2020-05-28 Steven G. Kargl <ka...@gcc.gnu.org> Mark Eggleston <markeggles...@gcc.gnu.org> gcc/fortran/ PR fortran/94397 * match.c (gfc_match_type_spec): New variable ok initialised to true. Set ok with the return value of gfc_reduce_init_expr called only if the expression is not EXPR_CONSTANT and is not EXPR_VARIABLE. Add !ok to the check for type not being integer or the rank being greater than zero. 2020-05-28 Mark Eggleston <markeggles...@gcc.gnu.org> gcc/testsuite/ PR fortran/94397 * gfortran.dg/pr94397.F90: New test. (cherry picked from commit 3ea6977d0f1813d982743a09660eec1760e981ec)