diff options
-rw-r--r-- | gcc/cp/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/cp/typeck.c | 5 |
2 files changed, 9 insertions, 1 deletions
diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index c4d01e6..72bd508 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +2003-07-17 Gabriel Dos Reis <gdr@integrable-solutions.net> + + PR c++/10668 + * typeck.c (build_class_member_access_expr): Improve diagnostic. + 2003-07-16 Mark Mitchell <mark@codesourcery.com> PR c++/11547 diff --git a/gcc/cp/typeck.c b/gcc/cp/typeck.c index b0bb1ac..9498dee 100644 --- a/gcc/cp/typeck.c +++ b/gcc/cp/typeck.c @@ -1805,7 +1805,10 @@ build_class_member_access_expr (tree object, tree member, member_scope = TYPE_CONTEXT (member_scope); if (!member_scope || !DERIVED_FROM_P (member_scope, object_type)) { - error ("`%D' is not a member of `%T'", member, object_type); + if (TREE_CODE (member) == FIELD_DECL) + error ("invalid use of nonstatic data member '%E'", member); + else + error ("`%D' is not a member of `%T'", member, object_type); return error_mark_node; } |