http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46244
--- Comment #9 from Tobias Burnus <burnus at gcc dot gnu.org> 2010-11-06 13:00:27 UTC --- (In reply to comment #8) > (In reply to comment #7) > > type b > > sequence > > class(a), pointer :: pa > > end type b > > That's invalid per F2008's C436 combined with C405 + 1.3.147.6. Draft patch: --- a/gcc/fortran/resolve.c +++ b/gcc/fortran/resolve.c @@ -11493,7 +11493,8 @@ resolve_fl_derived (gfc_symbol *sym) if (sym->attr.sequence) { - if (c->ts.type == BT_DERIVED && c->ts.u.derived->attr.sequence == 0) + if ((c->ts.type == BT_DERIVED && c->ts.u.derived->attr.sequence == 0) + || c->ts.type == BT_CLASS) { gfc_error ("Component %s of SEQUENCE type declared at %L does " "not have the SEQUENCE attribute",