Commit dfcf0b12 by Francois-Xavier Coudert Committed by François-Xavier Coudert

trans-types.c (gfc_get_desc_dim_type): Do not to try emit debug info.

	* 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.

From-SVN: r128540
parent 42cbdeac
2007-09-17 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
* 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 <pault@gcc.gnu.org> 2007-09-16 Paul Thomas <pault@gcc.gnu.org>
PR fortran/29396 PR fortran/29396
......
...@@ -1104,6 +1104,7 @@ gfc_get_desc_dim_type (void) ...@@ -1104,6 +1104,7 @@ gfc_get_desc_dim_type (void)
TYPE_FIELDS (type) = fieldlist; TYPE_FIELDS (type) = fieldlist;
gfc_finish_type (type); gfc_finish_type (type);
TYPE_DECL_SUPPRESS_DEBUG (TYPE_STUB_DECL (type)) = 1;
gfc_desc_dim_type = type; gfc_desc_dim_type = type;
return type; return type;
...@@ -1411,6 +1412,7 @@ gfc_get_array_descriptor_base (int dimen) ...@@ -1411,6 +1412,7 @@ gfc_get_array_descriptor_base (int dimen)
TYPE_FIELDS (fat_type) = fieldlist; TYPE_FIELDS (fat_type) = fieldlist;
gfc_finish_type (fat_type); gfc_finish_type (fat_type);
TYPE_DECL_SUPPRESS_DEBUG (TYPE_STUB_DECL (fat_type)) = 1;
gfc_array_descriptor_base[dimen - 1] = fat_type; gfc_array_descriptor_base[dimen - 1] = fat_type;
return fat_type; return fat_type;
...@@ -1807,6 +1809,10 @@ gfc_get_derived_type (gfc_symbol * derived) ...@@ -1807,6 +1809,10 @@ gfc_get_derived_type (gfc_symbol * derived)
field = gfc_add_field_to_struct (&fieldlist, typenode, field = gfc_add_field_to_struct (&fieldlist, typenode,
get_identifier (c->name), get_identifier (c->name),
field_type); 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); DECL_PACKED (field) |= TYPE_PACKED (typenode);
...@@ -1820,6 +1826,7 @@ gfc_get_derived_type (gfc_symbol * derived) ...@@ -1820,6 +1826,7 @@ gfc_get_derived_type (gfc_symbol * derived)
TYPE_FIELDS (typenode) = fieldlist; TYPE_FIELDS (typenode) = fieldlist;
gfc_finish_type (typenode); gfc_finish_type (typenode);
gfc_set_decl_location (TYPE_STUB_DECL (typenode), &derived->declared_at);
derived->backend_decl = typenode; derived->backend_decl = typenode;
...@@ -1897,6 +1904,7 @@ gfc_get_mixed_entry_union (gfc_namespace *ns) ...@@ -1897,6 +1904,7 @@ gfc_get_mixed_entry_union (gfc_namespace *ns)
TYPE_FIELDS (type) = fieldlist; TYPE_FIELDS (type) = fieldlist;
gfc_finish_type (type); gfc_finish_type (type);
TYPE_DECL_SUPPRESS_DEBUG (TYPE_STUB_DECL (type)) = 1;
return type; return type;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment