diff options
author | Jim Wilson <wilson@gcc.gnu.org> | 1994-05-31 17:23:46 -0700 |
---|---|---|
committer | Jim Wilson <wilson@gcc.gnu.org> | 1994-05-31 17:23:46 -0700 |
commit | e65f61cfe434b56aa12ca24b6144cdae8bdd5e10 (patch) | |
tree | ed417da8802edc70c3234613a7a1e6fd797af10a /gcc/dbxout.c | |
parent | b2526fe62130664473daca50df92ad112e861cf7 (diff) | |
download | gcc-e65f61cfe434b56aa12ca24b6144cdae8bdd5e10.zip gcc-e65f61cfe434b56aa12ca24b6144cdae8bdd5e10.tar.gz gcc-e65f61cfe434b56aa12ca24b6144cdae8bdd5e10.tar.bz2 |
(dbxout_type): Always emit cross-references if
use_gnu_debug_info_extensions set.
From-SVN: r7410
Diffstat (limited to 'gcc/dbxout.c')
-rw-r--r-- | gcc/dbxout.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/gcc/dbxout.c b/gcc/dbxout.c index cecc8a4..efcdaa6 100644 --- a/gcc/dbxout.c +++ b/gcc/dbxout.c @@ -979,10 +979,13 @@ dbxout_type (type, full, show_arg_types) #ifdef DBX_NO_XREFS /* For systems where dbx output does not allow the `=xsNAME:' syntax, leave the type-number completely undefined rather than output - a cross-reference. */ - if (TREE_CODE (type) == RECORD_TYPE || TREE_CODE (type) == UNION_TYPE - || TREE_CODE (type) == QUAL_UNION_TYPE - || TREE_CODE (type) == ENUMERAL_TYPE) + a cross-reference. If we have already used GNU debug info extensions, + then it is OK to output a cross reference. This is necessary to get + proper C++ debug output. */ + if ((TREE_CODE (type) == RECORD_TYPE || TREE_CODE (type) == UNION_TYPE + || TREE_CODE (type) == QUAL_UNION_TYPE + || TREE_CODE (type) == ENUMERAL_TYPE) + && ! use_gnu_debug_info_extensions) /* We must use the same test here as we use twice below when deciding whether to emit a cross-reference. */ if ((TYPE_NAME (type) != 0 |