diff options
author | wilson <wilson@138bc75d-0d04-0410-961f-82ee72b054a4> | 1998-05-19 15:31:53 +0000 |
---|---|---|
committer | wilson <wilson@138bc75d-0d04-0410-961f-82ee72b054a4> | 1998-05-19 15:31:53 +0000 |
commit | 7a588fdf991df005ee9304c46710e9746984c1e4 (patch) | |
tree | c54c968896b49d0462ebe45dab5ffb8d35ce28e5 /gcc/dwarfout.c | |
parent | 9a1071c309061a85fee758048b1dd0afd6fb9484 (diff) | |
download | gcc-7a588fdf991df005ee9304c46710e9746984c1e4.tar.gz |
Fix SCO5 namespace/dwarf interaction bug.
* dwarfout.c (dwarfout_file_scope_decl, case TYPE_DECL): Ignore
LANG_TYPE trees with DECL_SOURCE_LINE of 0.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@19883 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/dwarfout.c')
-rw-r--r-- | gcc/dwarfout.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/gcc/dwarfout.c b/gcc/dwarfout.c index e80a2c9a92f..ce9df47efd3 100644 --- a/gcc/dwarfout.c +++ b/gcc/dwarfout.c @@ -5190,8 +5190,18 @@ dwarfout_file_scope_decl (decl, set_finalizing) really need to output these (non-fundamental) types because other DIEs may contain references to them. */ + /* Also ignore language dependent types here, because they are probably + also built-in types. If we didn't ignore them, then we would get + references to undefined labels because output_type doesn't support + them. So, for now, we need to ignore them to avoid assembler + errors. */ + + /* ??? This code is different than the equivalent code in dwarf2out.c. + The dwarf2out.c code is probably more correct. */ + if (DECL_SOURCE_LINE (decl) == 0 - && type_is_fundamental (TREE_TYPE (decl))) + && (type_is_fundamental (TREE_TYPE (decl)) + || TREE_CODE (TREE_TYPE (decl)) == LANG_TYPE)) return; /* If we are in terse mode, don't generate any DIEs to represent |