diff options
author | Janus Weil <janus@gcc.gnu.org> | 2014-12-29 11:45:21 +0100 |
---|---|---|
committer | Janus Weil <janus@gcc.gnu.org> | 2014-12-29 11:45:21 +0100 |
commit | 7430df9766d0706da1dc969d7aae9a6c9ed367d8 (patch) | |
tree | 09c521ceb79d4e0937eba0cc70142b17b77d1255 /gcc/fortran/array.c | |
parent | 8cd2f58d8422616e32e236f1eb4301ccfbea69c0 (diff) | |
download | gcc-7430df9766d0706da1dc969d7aae9a6c9ed367d8.zip gcc-7430df9766d0706da1dc969d7aae9a6c9ed367d8.tar.gz gcc-7430df9766d0706da1dc969d7aae9a6c9ed367d8.tar.bz2 |
re PR fortran/60357 ([F08] structure constructor with unspecified values for allocatable components)
2014-12-29 Janus Weil <janus@gcc.gnu.org>
PR fortran/60357
* array.c (check_constructor): Ignore empty expressions.
* expr.c (check_alloc_comp_init): Check if constructor expression
exists.
* primary.c (build_actual_constructor): Warn for absent alloc-comp
initializers in pre-2008 standards.
2014-12-29 Janus Weil <janus@gcc.gnu.org>
PR fortran/60357
* gfortran.dg/alloc_comp_constructor_7.f90: New.
From-SVN: r219098
Diffstat (limited to 'gcc/fortran/array.c')
-rw-r--r-- | gcc/fortran/array.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/fortran/array.c b/gcc/fortran/array.c index e60b938..67bd42b 100644 --- a/gcc/fortran/array.c +++ b/gcc/fortran/array.c @@ -1309,6 +1309,9 @@ check_constructor (gfc_constructor_base ctor, bool (*check_function) (gfc_expr * { e = c->expr; + if (!e) + continue; + if (e->expr_type != EXPR_ARRAY) { if (!(*check_function)(e)) |