diff options
author | aldyh <aldyh@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-02-26 06:58:01 +0000 |
---|---|---|
committer | aldyh <aldyh@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-02-26 06:58:01 +0000 |
commit | d5b04d83f872703da4a8ee4253a68ad4a0596e15 (patch) | |
tree | 5c5f1a8ad11f67954275c0e6979b919433ead64c /gcc/dwarf2out.c | |
parent | 019f2e94872f792282611bc8106c2fa4bb04f4d4 (diff) | |
download | gcc-d5b04d83f872703da4a8ee4253a68ad4a0596e15.tar.gz |
2002-02-26 Aldy Hernandez <aldyh@redhat.com>
* dwarf2out.c (modified_type_die): Do not call type_main_variant
for vectors.
(gen_type_die): Same.
* attribs.c (handle_vector_size_attribute): Set debug information.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@50048 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/dwarf2out.c')
-rw-r--r-- | gcc/dwarf2out.c | 18 |
1 files changed, 13 insertions, 5 deletions
diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index 8d7d48b39bb..6313aeba2f4 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -7565,7 +7565,12 @@ modified_type_die (type, is_const_type, is_volatile_type, context_die) copy was created to help us keep track of typedef names) and that copy might have a different TYPE_UID from the original ..._TYPE node. */ - mod_type_die = lookup_type_die (type_main_variant (type)); + if (TREE_CODE (type) != VECTOR_TYPE) + mod_type_die = lookup_type_die (type_main_variant (type)); + else + /* Vectors have the debugging information in the type, + not the main variant. */ + mod_type_die = lookup_type_die (type); if (mod_type_die == NULL) abort (); } @@ -10976,10 +10981,13 @@ gen_type_die (type, context_die) if (type == NULL_TREE || type == error_mark_node) return; - /* We are going to output a DIE to represent the unqualified version of - this type (i.e. without any const or volatile qualifiers) so get the - main variant (i.e. the unqualified version) of this type now. */ - type = type_main_variant (type); + /* We are going to output a DIE to represent the unqualified version + of this type (i.e. without any const or volatile qualifiers) so + get the main variant (i.e. the unqualified version) of this type + now. (Vectors are special because the debugging info is in the + cloned type itself). */ + if (TREE_CODE (type) != VECTOR_TYPE) + type = type_main_variant (type); if (TREE_ASM_WRITTEN (type)) return; |