PR c++/36797
* mangle.c (write_expression): Improve diagnostic for TRAIT_EXPR.
From-SVN: r184874
2012-03-03 Jason Merrill <jason@redhat.com>
+ PR c++/36797
+ * mangle.c (write_expression): Improve diagnostic for TRAIT_EXPR.
+
* class.c (add_method): Always build an OVERLOAD for using-decls.
* search.c (lookup_member): Handle getting an OVERLOAD for a
single function.
if (name == NULL)
{
- sorry ("mangling %C", code);
+ switch (code)
+ {
+ case TRAIT_EXPR:
+ error ("use of built-in trait %qE in function signature; "
+ "use library traits instead", expr);
+ break;
+
+ default:
+ sorry ("mangling %C", code);
+ break;
+ }
return;
}
else
+2012-03-03 Jason Merrill <jason@redhat.com>
+
+ PR c++/36797
+ * g++.dg/ext/is_empty2.C: New.
+
2012-03-03 Tobias Burnus <burnus@net-b.de>
PR fortran/48820
--- /dev/null
+// PR c++/36797
+
+template <int> struct A { };
+
+template <class T>
+int foo (A<__is_empty (T)>* = 0); // { dg-error "built-in trait" }
+
+int main ()
+{
+ foo<int>();
+}