diff options
author | Per Bothner <bothner@gcc.gnu.org> | 1996-02-12 12:03:24 -0800 |
---|---|---|
committer | Per Bothner <bothner@gcc.gnu.org> | 1996-02-12 12:03:24 -0800 |
commit | 79afd9061c9323a9b8394ae4470a522233856048 (patch) | |
tree | 0e616fb415f5d4cdab2d75612da466be6ce7ccf0 | |
parent | 9506a28da93192d601373957c0b57826bcf14ed6 (diff) | |
download | gcc-79afd9061c9323a9b8394ae4470a522233856048.zip gcc-79afd9061c9323a9b8394ae4470a522233856048.tar.gz gcc-79afd9061c9323a9b8394ae4470a522233856048.tar.bz2 |
Changes to distinguish typedef from original type in debug output.
* dbxout,c (dbxout_type): Don't canonicalize typedef type to base.
From-SVN: r11217
-rw-r--r-- | gcc/dbxout.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/gcc/dbxout.c b/gcc/dbxout.c index f12cae8..cb06b16 100644 --- a/gcc/dbxout.c +++ b/gcc/dbxout.c @@ -1057,7 +1057,8 @@ dbxout_type (type, full, show_arg_types) by assuming `int'. */ if (type == error_mark_node) type = integer_type_node; - else + else if (!(TYPE_NAME (type) && TREE_CODE (TYPE_NAME (type)) == TYPE_DECL + && DECL_ORIGINAL_TYPE (TYPE_NAME (type)))) { type = TYPE_MAIN_VARIANT (type); if (TYPE_NAME (type) @@ -1155,6 +1156,13 @@ dbxout_type (type, full, show_arg_types) typevec[TYPE_SYMTAB_ADDRESS (type)].status = TYPE_DEFINED; + if (TYPE_NAME (type) && TREE_CODE (TYPE_NAME (type)) == TYPE_DECL + && DECL_ORIGINAL_TYPE (TYPE_NAME (type))) + { + dbxout_type (DECL_ORIGINAL_TYPE (TYPE_NAME (type)), 0, 0); + return; + } + switch (TREE_CODE (type)) { case VOID_TYPE: |