diff options
author | Janus Weil <janus@gcc.gnu.org> | 2011-06-16 13:45:05 +0200 |
---|---|---|
committer | Janus Weil <janus@gcc.gnu.org> | 2011-06-16 13:45:05 +0200 |
commit | 9c9eacb9b4d7b9f2866da3352e12722aedc846df (patch) | |
tree | b906177d151631ae9652bebb3a02f3f328d24096 /gcc/fortran/module.c | |
parent | fd4df33d4ee706a8dbc98201b1a62456fabb8195 (diff) | |
download | gcc-9c9eacb9b4d7b9f2866da3352e12722aedc846df.zip gcc-9c9eacb9b4d7b9f2866da3352e12722aedc846df.tar.gz gcc-9c9eacb9b4d7b9f2866da3352e12722aedc846df.tar.bz2 |
re PR fortran/49417 ([OOP] ICE on invalid CLASS component declaration)
2011-06-16 Janus Weil <janus@gcc.gnu.org>
PR fortran/49417
* module.c (mio_component): Make sure the 'class_ok' attribute is set
for use-associated CLASS components.
* parse.c (parse_derived): Check for 'class_ok' attribute.
* resolve.c (resolve_fl_derived): Ditto.
2011-06-16 Janus Weil <janus@gcc.gnu.org>
PR fortran/49417
* gfortran.dg/class_43.f03: New.
From-SVN: r175101
Diffstat (limited to 'gcc/fortran/module.c')
-rw-r--r-- | gcc/fortran/module.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/fortran/module.c b/gcc/fortran/module.c index 533246d..89281a5 100644 --- a/gcc/fortran/module.c +++ b/gcc/fortran/module.c @@ -2403,6 +2403,8 @@ mio_component (gfc_component *c, int vtype) mio_array_spec (&c->as); mio_symbol_attribute (&c->attr); + if (c->ts.type == BT_CLASS) + c->attr.class_ok = 1; c->attr.access = MIO_NAME (gfc_access) (c->attr.access, access_types); if (!vtype) |