diff options
| author | jason <jason@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-03-15 17:41:35 +0000 |
|---|---|---|
| committer | jason <jason@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-03-15 17:41:35 +0000 |
| commit | 0fd8641ba37d0bc749971a289e02c19f56b85819 (patch) | |
| tree | 176af36ed24310b3ba88c8936113ecf1ca26773a | |
| parent | 8f11972177207d5544e9429df44c386a187777f2 (diff) | |
| download | ppe42-gcc-0fd8641ba37d0bc749971a289e02c19f56b85819.tar.gz ppe42-gcc-0fd8641ba37d0bc749971a289e02c19f56b85819.zip | |
PR debug/9039
* dwarf2out.c (gen_decl_die): Ignore frontend tree codes.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@64412 138bc75d-0d04-0410-961f-82ee72b054a4
| -rw-r--r-- | gcc/ChangeLog | 3 | ||||
| -rw-r--r-- | gcc/dwarf2out.c | 3 | ||||
| -rw-r--r-- | gcc/testsuite/g++.dg/debug/anonunion1.C | 14 |
3 files changed, 20 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2a73783cee6..447cf7b9729 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,8 @@ 2003-03-15 Jason Merrill <jason@redhat.com> + PR debug/9039 + * dwarf2out.c (gen_decl_die): Ignore frontend tree codes. + PR debug/6387 * dwarf2out.c (dwarf2out_decl): If we're at -g1, just stick nested function DIEs at toplevel. diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index e31fcb878d3..fec07a76bd5 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -12194,6 +12194,9 @@ gen_decl_die (decl, context_die) break; default: + if ((int)TREE_CODE (decl) > NUM_TREE_CODES) + /* Probably some frontend-internal decl. Assume we don't care. */ + break; abort (); } } diff --git a/gcc/testsuite/g++.dg/debug/anonunion1.C b/gcc/testsuite/g++.dg/debug/anonunion1.C new file mode 100644 index 00000000000..c48a8cdc131 --- /dev/null +++ b/gcc/testsuite/g++.dg/debug/anonunion1.C @@ -0,0 +1,14 @@ +// PR debug/9039 +// Verify that the debugging backends don't get confused by ALIAS_DECLs. + +int foo() +{ + union + { + int z; + unsigned int w; + }; + + w = 0; + return 0; +} |

