[PATCH, PR c++/58561] dbxout.c and TEMPLATE_TYPE_PARM
David Edelsohn
dje.gcc@gmail.com
Mon Nov 24 04:12:00 GMT 2014
The patch for PR c++/58561 fixed DWARF, but did not fix Stabs
debugging. The follow patch at least stops G++ from ICE'ing for a
return type of auto. I'm not sure what type of debugging stabs should
generate, if it can represent it.
Thanks, David
PR c++/58561
* dbxout.c: Include stringpool.h
(dbxout_type) [default]: Ignore auto type.
Index: dbxout.c
===================================================================
--- dbxout.c (revision 217982)
+++ dbxout.c (working copy)
@@ -103,6 +103,7 @@ along with GCC; see the file COPYING3. If not see
#include "plugin-api.h"
#include "ipa-ref.h"
#include "cgraph.h"
+#include "stringpool.h"
#ifdef XCOFF_DEBUGGING_INFO
#include "xcoffout.h"
@@ -2329,6 +2330,17 @@ dbxout_type (tree type, int full)
break;
default:
+ /* A C++ function with deduced return type can have a TEMPLATE_TYPE_PARM
+ named 'auto' in its type.
+ No debug info for TEMPLATE_TYPE_PARM type supported yet. */
+ if (lang_GNU_CXX ())
+ {
+ tree name = TYPE_IDENTIFIER (type);
+ if (name == get_identifier ("auto")
+ || name == get_identifier ("decltype(auto)"))
+ break;
+ }
+
gcc_unreachable ();
}
}
More information about the Gcc-patches
mailing list