* error.c (type_to_string): Print typedef-stripped version too.
authorJason Merrill <jason@redhat.com>
Tue, 14 Jun 2011 18:16:16 +0000 (14:16 -0400)
committerJason Merrill <jason@gcc.gnu.org>
Tue, 14 Jun 2011 18:16:16 +0000 (14:16 -0400)
From-SVN: r175045

gcc/cp/ChangeLog
gcc/cp/error.c

index 0fc8eab5e8bef7ea6ecf5cb02dfc0cb620dd645f..ef71b697e88a24673e0c8b0a52009d14553e356e 100644 (file)
@@ -1,5 +1,7 @@
 2011-06-14  Jason Merrill  <jason@redhat.com>
 
+       * error.c (type_to_string): Print typedef-stripped version too.
+
        PR c++/49117
        * call.c (perform_implicit_conversion_flags): Print source type as
        well as expression.
index 96796c206d9f70c78302a64dcc6d70d2be6e9b2a..22470dca0550481a08d953f12859c8996541ae00 100644 (file)
@@ -2632,6 +2632,15 @@ type_to_string (tree typ, int verbose)
 
   reinit_cxx_pp ();
   dump_type (typ, flags);
+  if (typ && TYPE_P (typ) && typ != TYPE_CANONICAL (typ)
+      && !uses_template_parms (typ))
+    {
+      tree aka = strip_typedefs (typ);
+      pp_string (cxx_pp, " {aka");
+      pp_cxx_whitespace (cxx_pp);
+      dump_type (aka, flags);
+      pp_character (cxx_pp, '}');
+    }
   return pp_formatted_text (cxx_pp);
 }