PR c++/18698
* decl2.c (grokfield): Only try to treat the decl as an access
declaration if the scope is a class.
From-SVN: r115102
+2006-06-30 Jason Merrill <jason@redhat.com>
+
+ PR c++/18698
+ * decl2.c (grokfield): Only try to treat the decl as an access
+ declaration if the scope is a class.
+
2006-06-28 Jason Merrill <jason@redhat.com>
PR c++/27424
if (!declspecs->any_specifiers_p
&& declarator->kind == cdk_id
&& declarator->u.id.qualifying_scope
+ && TYPE_P (declarator->u.id.qualifying_scope)
+ && IS_AGGR_TYPE (declarator->u.id.qualifying_scope)
&& TREE_CODE (declarator->u.id.unqualified_name) == IDENTIFIER_NODE)
/* Access declaration */
return do_class_using_decl (declarator->u.id.qualifying_scope,
--- /dev/null
+// PR c++/18698
+// The compiler was giving an error message for invalid syntax
+// that irrelevantly talked about using-declarations.
+
+template<int> struct A
+{
+ ::A~(); // { dg-bogus "using-declaration" }
+};
+
+// Instead of the bogus error we get 3 separate errors.
+// { dg-error "no type" "" { target *-*-* } 5 }
+// { dg-error "::" "" { target *-*-* } 5 }
+// { dg-error "~" "" { target *-*-* } 5 }