http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47939
--- Comment #2 from Richard Guenther <rguenth at gcc dot gnu.org> 2011-03-01 14:31:35 UTC --- The lack of knowledge of George_t is the worst side-effect of this bug. /* { dg-do run } */ /* { dg-options "-g" } */ typedef struct _Harry { int dummy; } Harry_t; Harry_t harry; /* { dg-final { gdb-test 12 "((Harry_t *)&harry)->dummy" "0" } } */ typedef const struct _George { int dummy; } George_t; George_t george; /* { dg-final { gdb-test 12 "((George_t *)&george)->dummy" "0" } } */ typedef const Harry_t Michael_t; Michael_t michael; /* { dg-final { gdb-test 12 "((Michael_t *)&michael)->dummy" "0" } } */ int main() { return 0; } currently George_t and Michael_t using tests are UNSUPPORTED (error in processing the command). The patch has weird side-effects on diagnostics, it only shows a possible hint as to what the reason is we drop the TYPE_NAME.