From: fxcoudert Date: Mon, 17 Sep 2007 10:03:12 +0000 (+0000) Subject: * trans-types.c (gfc_get_desc_dim_type): Do not to try X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=a98b52d13e4a6ec25bb20846a99ed1ff90f2ac9c;p=thirdparty%2Fgcc.git * trans-types.c (gfc_get_desc_dim_type): Do not to try emit debug info. (gfc_get_array_descriptor_base): Likewise. (gfc_get_mixed_entry_union): Likewise (gfc_get_derived_type): Set decl location for fields and derived type itself. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@128540 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 6aca2c7ddd75..9137da538708 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,12 @@ +2007-09-17 Francois-Xavier Coudert + + * trans-types.c (gfc_get_desc_dim_type): Do not to try + emit debug info. + (gfc_get_array_descriptor_base): Likewise. + (gfc_get_mixed_entry_union): Likewise + (gfc_get_derived_type): Set decl location for fields and + derived type itself. + 2007-09-16 Paul Thomas PR fortran/29396 diff --git a/gcc/fortran/trans-types.c b/gcc/fortran/trans-types.c index ba72466372c0..cfdd39991f53 100644 --- a/gcc/fortran/trans-types.c +++ b/gcc/fortran/trans-types.c @@ -1104,6 +1104,7 @@ gfc_get_desc_dim_type (void) TYPE_FIELDS (type) = fieldlist; gfc_finish_type (type); + TYPE_DECL_SUPPRESS_DEBUG (TYPE_STUB_DECL (type)) = 1; gfc_desc_dim_type = type; return type; @@ -1411,6 +1412,7 @@ gfc_get_array_descriptor_base (int dimen) TYPE_FIELDS (fat_type) = fieldlist; gfc_finish_type (fat_type); + TYPE_DECL_SUPPRESS_DEBUG (TYPE_STUB_DECL (fat_type)) = 1; gfc_array_descriptor_base[dimen - 1] = fat_type; return fat_type; @@ -1807,6 +1809,10 @@ gfc_get_derived_type (gfc_symbol * derived) field = gfc_add_field_to_struct (&fieldlist, typenode, get_identifier (c->name), field_type); + if (c->loc.lb) + gfc_set_decl_location (field, &c->loc); + else if (derived->declared_at.lb) + gfc_set_decl_location (field, &derived->declared_at); DECL_PACKED (field) |= TYPE_PACKED (typenode); @@ -1820,6 +1826,7 @@ gfc_get_derived_type (gfc_symbol * derived) TYPE_FIELDS (typenode) = fieldlist; gfc_finish_type (typenode); + gfc_set_decl_location (TYPE_STUB_DECL (typenode), &derived->declared_at); derived->backend_decl = typenode; @@ -1897,6 +1904,7 @@ gfc_get_mixed_entry_union (gfc_namespace *ns) TYPE_FIELDS (type) = fieldlist; gfc_finish_type (type); + TYPE_DECL_SUPPRESS_DEBUG (TYPE_STUB_DECL (type)) = 1; return type; }