class.c (check_field_decls): Complain about non-static data members with same name as class in class with...

* class.c (check_field_decls): Complain about non-static data
        members with same name as class in class with constructor.

From-SVN: r33856
This commit is contained in:
Jason Merrill 2000-05-11 19:22:53 +00:00 committed by Jason Merrill
parent b58c068a64
commit c10bffd02f
2 changed files with 12 additions and 0 deletions

View File

@ -1,3 +1,8 @@
2000-05-11 Jason Merrill <jason@casey.cygnus.com>
* class.c (check_field_decls): Complain about non-static data
members with same name as class in class with constructor.
2000-05-10 Jason Merrill <jason@casey.cygnus.com>
* decl.c (grokdeclarator): Allow non-static data members with

View File

@ -3442,6 +3442,13 @@ check_field_decls (t, access_decls, empty_p,
|= CLASSTYPE_READONLY_FIELDS_NEED_INIT (type);
}
/* Core issue 80: A nonstatic data member is required to have a
different name from the class iff the class has a
user-defined constructor. */
if (DECL_NAME (x) == constructor_name (t)
&& TYPE_HAS_CONSTRUCTOR (t))
cp_error_at ("field `%#D' with same name as class", x);
/* We set DECL_C_BIT_FIELD in grokbitfield.
If the type and width are valid, we'll also set DECL_BIT_FIELD. */
if (DECL_C_BIT_FIELD (x))