http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47650
--- Comment #9 from rguenther at suse dot de <rguenther at suse dot de> 2011-02-09 16:33:30 UTC --- On Wed, 9 Feb 2011, joe at mcknight dot de wrote: > http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47650 > > --- Comment #8 from joe at mcknight dot de 2011-02-09 16:23:44 UTC --- > (In reply to comment #6) > > See http://gcc.gnu.org/ml/gcc-patches/2011-01/msg00956.html for a patch > > (queued for 4.7, several tree-dump check testcases have to be adjusted). > > Richard, I've found another example for incorrect output of > print_generic_decl(). > > Here: > > typedef struct { > double dvar; > int ivar; > } *tpdefp; > > int myfunc(tpdefp var); > > The output would not treat the variable as being of the new type but it would > repeat the declaration of the struct in print_generic_decl() and output > (including newlines): > > extern int myfunc (struct > { > double dvar; > int ivar; > } *); > > That could be related to the function pointer issue where print_generic_decl() > also rather repeats the declaration instead of printing the new type. You should use a debugger to see why that happens, it should end up printing TYPE_NAME which should be a TYPE_DECL with a DECL_NAME which should be an IDENTIFIER_NODE. You can also try TDF_SLIM. Richard.