aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/primary.c
diff options
context:
space:
mode:
authorMikael Morin <mikael@gcc.gnu.org>2014-02-02 11:50:28 +0000
committerMikael Morin <mikael@gcc.gnu.org>2014-02-02 11:50:28 +0000
commit792f73016efe3024ff55d0bb462dbec25196af55 (patch)
tree63b787efc8b15dbc708ff2e4488e33b04fdceed7 /gcc/fortran/primary.c
parente36c121143a67997b91789031f366595737ce1da (diff)
downloadgcc-792f73016efe3024ff55d0bb462dbec25196af55.zip
gcc-792f73016efe3024ff55d0bb462dbec25196af55.tar.gz
gcc-792f73016efe3024ff55d0bb462dbec25196af55.tar.bz2
re PR fortran/57033 (ICE on extended derived type and default initialization)
fortran/ PR fortran/57033 * primary.c (gfc_convert_to_structure_constructor): Avoid null pointer dereference. testsuite/ PR fortran/57033 * gfortran.dg/default_initialization_7.f90: New test. From-SVN: r207396
Diffstat (limited to 'gcc/fortran/primary.c')
-rw-r--r--gcc/fortran/primary.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/fortran/primary.c b/gcc/fortran/primary.c
index c77b4ec..7d7fbad 100644
--- a/gcc/fortran/primary.c
+++ b/gcc/fortran/primary.c
@@ -2544,7 +2544,8 @@ gfc_convert_to_structure_constructor (gfc_expr *e, gfc_symbol *sym, gfc_expr **c
if (parent && !comp)
break;
- actual = actual->next;
+ if (actual)
+ actual = actual->next;
}
if (!build_actual_constructor (&comp_head, &ctor_head, sym))