diff options
author | Tobias Burnus <burnus@gcc.gnu.org> | 2009-08-09 10:35:36 +0200 |
---|---|---|
committer | Tobias Burnus <burnus@gcc.gnu.org> | 2009-08-09 10:35:36 +0200 |
commit | 2b374f55986f4d4c84d1af9a9a6be1c8d72b1e91 (patch) | |
tree | 062189decd4fd69dc34c13ea034acb58e8725c39 /gcc/fortran/resolve.c | |
parent | 2c08497af02c674b5f87b988b55f8a79d2e77195 (diff) | |
download | gcc-2b374f55986f4d4c84d1af9a9a6be1c8d72b1e91.zip gcc-2b374f55986f4d4c84d1af9a9a6be1c8d72b1e91.tar.gz gcc-2b374f55986f4d4c84d1af9a9a6be1c8d72b1e91.tar.bz2 |
re PR fortran/40955 (STDCALL attributes are not saved in the .MOD files)
2009-08-05 Tobias Burnus <burnus@net-b.de>
PR fortran/40955
* gfortran.h (ext_attr_id_t): Add typedef for this enum.
(gfc_add_ext_attribute): Use it.
* decl.c (gfc_match_gcc_attributes): Ditto.
* expr.c (gfc_check_pointer_assign): Ditto.
* symbol.c (gfc_add_ext_attribute): Ditto.
(gfc_copy_attr): Copy also ext_attr.
* resolve.c (resolve_fl_derived,resolve_symbol): Ditto.
* module.c (mio_symbol_attribute): Save ext_attr in the mod
* file.
2009-08-05 Tobias Burnus <burnus@net-b.de>
PR fortran/40955
* gfortran.dg/module_md5_1.f90: Update MD5 check sum.
From-SVN: r150589
Diffstat (limited to 'gcc/fortran/resolve.c')
-rw-r--r-- | gcc/fortran/resolve.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/fortran/resolve.c b/gcc/fortran/resolve.c index 14a111e..39f3cdc 100644 --- a/gcc/fortran/resolve.c +++ b/gcc/fortran/resolve.c @@ -9217,6 +9217,7 @@ resolve_fl_derived (gfc_symbol *sym) c->attr.elemental = ifc->attr.elemental; c->attr.recursive = ifc->attr.recursive; c->attr.always_explicit = ifc->attr.always_explicit; + c->attr.ext_attr |= ifc->attr.ext_attr; /* Replace symbols in array spec. */ if (c->as) { @@ -9712,6 +9713,7 @@ resolve_symbol (gfc_symbol *sym) sym->attr.dimension = ifc->attr.dimension; sym->attr.recursive = ifc->attr.recursive; sym->attr.always_explicit = ifc->attr.always_explicit; + sym->attr.ext_attr |= ifc->attr.ext_attr; /* Copy array spec. */ sym->as = gfc_copy_array_spec (ifc->as); if (sym->as) |