forked from OSchip/llvm-project
Make wording for certain invalid unary expressions more consistent.
An invalid decltype expression like 'decltype int' gives: error: expected '(' after 'decltype' This makes it so 'sizeof int' gives a similar one: error: expected parentheses around type name in sizeof expression llvm-svn: 192258
This commit is contained in:
parent
e4e12d0455
commit
767c1f8428
|
@ -310,8 +310,8 @@ def err_unspecified_vla_size_with_static : Error<
|
|||
def warn_deprecated_register : Warning<
|
||||
"'register' storage class specifier is deprecated">,
|
||||
InGroup<DeprecatedRegister>;
|
||||
def err_missed_parentheses_around_typename : Error<
|
||||
"missed parentheses around type name in %0">;
|
||||
def err_expected_parentheses_around_typename : Error<
|
||||
"expected parentheses around type name in %0 expression">;
|
||||
|
||||
def err_expected_case_before_expression: Error<
|
||||
"expected 'case' keyword before expression">;
|
||||
|
|
|
@ -1602,7 +1602,7 @@ Parser::ParseExprAfterUnaryExprOrTypeTrait(const Token &OpTok,
|
|||
|
||||
SourceLocation LParenLoc = PP.getLocForEndOfToken(OpTok.getLocation());
|
||||
SourceLocation RParenLoc = PP.getLocForEndOfToken(PrevTokLocation);
|
||||
Diag(LParenLoc, diag::err_missed_parentheses_around_typename)
|
||||
Diag(LParenLoc, diag::err_expected_parentheses_around_typename)
|
||||
<< OpTok.getName()
|
||||
<< FixItHint::CreateInsertion(LParenLoc, "(")
|
||||
<< FixItHint::CreateInsertion(RParenLoc, ")");
|
||||
|
|
|
@ -16,5 +16,5 @@ static_assert(alignof(Y<char, int, sizeof(int)>) == alignof(int), "");
|
|||
static_assert(alignof(Y<int, char, 1>) == alignof(int), ""); // expected-note {{in instantiation of}}
|
||||
|
||||
void pr16992 () {
|
||||
int x = alignof int; // expected-error{{missed parentheses around type name in alignof}}
|
||||
int x = alignof int; // expected-error {{expected parentheses around type name in alignof expression}}
|
||||
}
|
||||
|
|
|
@ -31,7 +31,7 @@ namespace pr16992 {
|
|||
|
||||
template<typename T> struct ABC {
|
||||
int func () {
|
||||
return sizeof T; //expected-error{{missed parentheses around type name in sizeof}}
|
||||
return sizeof T; // expected-error {{expected parentheses around type name in sizeof expression}}
|
||||
}
|
||||
};
|
||||
|
||||
|
|
|
@ -62,8 +62,8 @@ void test7() {
|
|||
struct pr16992 { int x; };
|
||||
|
||||
void func_16992 () {
|
||||
int x1 = sizeof int; // expected-error{{missed parentheses around type name in sizeof}}
|
||||
int x2 = sizeof struct pr16992; // expected-error{{missed parentheses around type name in sizeof}}
|
||||
int x3 = __alignof int; // expected-error{{missed parentheses around type name in __alignof}}
|
||||
int x4 = _Alignof int; // expected-error{{missed parentheses around type name in _Alignof}}
|
||||
int x1 = sizeof int; // expected-error {{expected parentheses around type name in sizeof expression}}
|
||||
int x2 = sizeof struct pr16992; // expected-error {{expected parentheses around type name in sizeof expression}}
|
||||
int x3 = __alignof int; // expected-error {{expected parentheses around type name in __alignof expression}}
|
||||
int x4 = _Alignof int; // expected-error {{expected parentheses around type name in _Alignof expression}}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue