Add an error diagnostic to Parse::ParseObjCMessageExpression().
This now exposes the following bug... ******************** TEST 'Sema/message.m' FAILED! ******************** Command: clang -fsyntax-only -verify Sema/message.m Output: Errors seen but not expected: Line 9: invalid receiver to message expression ******************** TEST 'Sema/message.m' FAILED! ******************** As far as I can tell, all messages to method agruments fail. The method arguments are built by Sema::ObjcActOnStartOfMethodDef(). llvm-svn: 44022
This commit is contained in:
parent
e33ba16368
commit
cd002f5a0e
|
|
@ -1243,6 +1243,7 @@ Parser::ExprResult Parser::ParseObjCMessageExpression() {
|
|||
} else {
|
||||
ExprResult Res = ParseAssignmentExpression();
|
||||
if (Res.isInvalid) {
|
||||
Diag(Tok, diag::err_invalid_receiver_to_message);
|
||||
SkipUntil(tok::identifier);
|
||||
return Res;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -322,6 +322,8 @@ DIAG(err_parse_error, ERROR,
|
|||
"parse error")
|
||||
DIAG(err_expected_expression, ERROR,
|
||||
"expected expression")
|
||||
DIAG(err_invalid_receiver_to_message, ERROR,
|
||||
"invalid receiver to message expression")
|
||||
DIAG(err_expected_external_declaration, ERROR,
|
||||
"expected external declaration")
|
||||
DIAG(err_expected_ident, ERROR,
|
||||
|
|
|
|||
Loading…
Reference in New Issue