http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51632
--- Comment #2 from Tobias Burnus <burnus at gcc dot gnu.org> 2012-09-03 06:36:05 UTC --- Author: burnus Date: Mon Sep 3 06:35:59 2012 New Revision: 190869 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=190869 Log: 2012-09-03 Alessandro Fanfarillo <fanfarillo....@gmail.com> Tobias Burnus <bur...@net-b.de> PR fortran/37336 * gfortran.h (symbol_attribute): Add artificial. * module.c (mio_symbol_attribute): Handle attr.artificial * class.c (gfc_build_class_symbol): Defer creation of the vtab if the DT has finalizers, mark generated symbols as attr.artificial. (has_finalizer_component, finalize_component, finalization_scalarizer, generate_finalization_wrapper): New static functions. (gfc_find_derived_vtab): Add _final component and call generate_finalization_wrapper. * dump-parse-tree.c (show_f2k_derived): Use resolved proc_tree->n.sym rather than unresolved proc_sym. (show_attr): Handle attr.artificial. * resolve.c (gfc_resolve_finalizers): Ensure that the vtab * exists. (resolve_fl_derived): Resolve finalizers before generating the vtab. (resolve_symbol): Also allow assumed-rank arrays with CONTIGUOUS; skip artificial symbols. (resolve_fl_derived0): Skip artificial symbols. 2012-09-03 Tobias Burnus <bur...@net-b.de> PR fortran/51632 * gfortran.dg/coarray_class_1.f90: New. Added: trunk/gcc/testsuite/gfortran.dg/coarray_class_1.f90 Modified: trunk/gcc/fortran/ChangeLog trunk/gcc/fortran/class.c trunk/gcc/fortran/dump-parse-tree.c trunk/gcc/fortran/gfortran.h trunk/gcc/fortran/module.c trunk/gcc/fortran/resolve.c trunk/gcc/testsuite/ChangeLog