diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index b0fc888475f..f8721f72202 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,7 @@ +2006-06-14 Gabriel Dos Reis + + * typeck.c (build_modify_expr): Tidy diagnostic message. + 2006-06-14 Mark Mitchell PR c++/28018 diff --git a/gcc/cp/typeck.c b/gcc/cp/typeck.c index 5602ef2baa2..d50c08b0c7e 100644 --- a/gcc/cp/typeck.c +++ b/gcc/cp/typeck.c @@ -5708,7 +5708,12 @@ build_modify_expr (tree lhs, enum tree_code modifycode, tree rhs) /* Allow array assignment in compiler-generated code. */ if (! DECL_ARTIFICIAL (current_function_decl)) { - error ("array used as initializer"); + /* This routine is used for both initialization and assignment. + Make sure the diagnostic message differentiates the context. */ + if (modifycode == INIT_EXPR) + error ("array used as initializer"); + else + error ("invalid array assignment"); return error_mark_node; }