diff options
author | Nikhil Benesch <nikhil.benesch@gmail.com> | 2019-01-15 23:54:37 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@gcc.gnu.org> | 2019-01-15 23:54:37 +0000 |
commit | 5686a6b7a67691dcbe5bd669f826f5ce09dd9fc2 (patch) | |
tree | 798d1a4753896287ebe7d1578be8232ee6b35293 /gcc | |
parent | 1abb44f863d32ef738d28144d2c984603e27721a (diff) | |
download | gcc-5686a6b7a67691dcbe5bd669f826f5ce09dd9fc2.zip gcc-5686a6b7a67691dcbe5bd669f826f5ce09dd9fc2.tar.gz gcc-5686a6b7a67691dcbe5bd669f826f5ce09dd9fc2.tar.bz2 |
godump.c (go_output_typedef): When outputting a typedef...
gcc/:
* godump.c (go_output_typedef): When outputting a typedef, refer
to the underlying type by its name and not its structure.
gcc/testsuite:
* gcc.misc-tests/godump-1.c: Add test case for typedef before
struct.
From-SVN: r267958
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/godump.c | 2 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.misc-tests/godump-1.c | 5 |
4 files changed, 16 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e1ae217..153a5ab 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2019-01-15 Nikhil Benesch <nikhil.benesch@gmail.com> + + * godump.c (go_output_typedef): When outputting a typedef, refer + to the underlying type by its name and not its structure. + 2019-01-15 David Malcolm <dmalcolm@redhat.com> PR c++/88795 diff --git a/gcc/godump.c b/gcc/godump.c index 17390b8..617a9648 100644 --- a/gcc/godump.c +++ b/gcc/godump.c @@ -1181,7 +1181,7 @@ go_output_typedef (struct godump_container *container, tree decl) return; *slot = CONST_CAST (void *, (const void *) type); - if (!go_format_type (container, TREE_TYPE (decl), false, false, NULL, + if (!go_format_type (container, TREE_TYPE (decl), true, false, NULL, false)) { fprintf (go_dump_file, "// "); diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index d226aa5..f032b48 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2019-01-15 Nikhil Benesch <nikhil.benesch@gmail.com> + + * gcc.misc-tests/godump-1.c: Add test case for typedef before + struct. + 2019-01-15 David Malcolm <dmalcolm@redhat.com> PR c++/88795 diff --git a/gcc/testsuite/gcc.misc-tests/godump-1.c b/gcc/testsuite/gcc.misc-tests/godump-1.c index ee984e5..f97bbec 100644 --- a/gcc/testsuite/gcc.misc-tests/godump-1.c +++ b/gcc/testsuite/gcc.misc-tests/godump-1.c @@ -468,6 +468,11 @@ struct { double d; uint8_t : 0; } sd_not_equiv; typedef struct s_undef_t s_undef_t2; +typedef struct s_fwd *s_fwd_p; +/* { dg-final { scan-file godump-1.out "(?n)^type _s_fwd_p \\*_s_fwd$" } } */ + +struct s_fwd { }; +/* { dg-final { scan-file godump-1.out "(?n)^type _s_fwd struct \{ \}$" } } */ /*** nested structs ***/ typedef struct { struct { uint8_t ca[3]; } s; uint32_t i; } tsn; |