aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/decl.c
diff options
context:
space:
mode:
authorErik Edelmann <eedelman@gcc.gnu.org>2005-10-22 17:02:42 +0000
committerErik Edelmann <eedelman@gcc.gnu.org>2005-10-22 17:02:42 +0000
commit6019a1a447626909b671b617003d4b259872a950 (patch)
tree907681fadb91f7e08c1c9b66644c93467088e0db /gcc/fortran/decl.c
parente7c84bf8e9064b10e11d77e3a9161b9e9534315c (diff)
downloadgcc-6019a1a447626909b671b617003d4b259872a950.zip
gcc-6019a1a447626909b671b617003d4b259872a950.tar.gz
gcc-6019a1a447626909b671b617003d4b259872a950.tar.bz2
re PR fortran/24426 (gfortran ICE for valid derived type definition with default initialization)
2005-10-22 Erik Edelmann <eedelman@gcc.gnu.org> PR fortran/24426 * decl.c (variable_decl): Don't assign default initializers to pointers. 2005-10-22 Erik Edelmann <eedelman@gcc.gnu.org> PR fortran/24426 * gfortran.dg/der_pointer_4.f90: New. From-SVN: r105792
Diffstat (limited to 'gcc/fortran/decl.c')
-rw-r--r--gcc/fortran/decl.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/fortran/decl.c b/gcc/fortran/decl.c
index 21f1089..7a605d6 100644
--- a/gcc/fortran/decl.c
+++ b/gcc/fortran/decl.c
@@ -1094,7 +1094,7 @@ variable_decl (int elem)
t = add_init_expr_to_sym (name, &initializer, &var_locus);
else
{
- if (current_ts.type == BT_DERIVED && !initializer)
+ if (current_ts.type == BT_DERIVED && !current_attr.pointer && !initializer)
initializer = gfc_default_initializer (&current_ts);
t = build_struct (name, cl, &initializer, &as);
}