+2000-04-17 Mark Mitchell <mark@codesourcery.com>
+
+ * decl2.c (grokfield): Issue error on illegal data member
+ declaration.
+
Mon Apr 17 17:11:16 2000 Mark P Mitchell <mark@codesourcery.com>
* method.c (make_thunk): Set DECL_CONTEXT for a THUNK_DECL.
|| TREE_CODE (TREE_OPERAND (declarator, 0)) == SCOPE_REF)
&& parmlist_is_exprlist (CALL_DECLARATOR_PARMS (declarator)))
{
- init = TREE_OPERAND (declarator, 1);
+ /* It's invalid to try to initialize a data member using a
+ functional notation, e.g.:
+
+ struct S {
+ static int i (3);
+ };
+
+ Explain that to the user. */
+ static int explained_p;
+
+ cp_error ("invalid data member initiailization");
+ if (!explained_p)
+ {
+ cp_error ("use `=' to initialize static data members");
+ explained_p = 1;
+ }
+
declarator = TREE_OPERAND (declarator, 0);
flags = 0;
}