summaryrefslogtreecommitdiffstats
path: root/clang
diff options
context:
space:
mode:
Diffstat (limited to 'clang')
-rw-r--r--clang/include/clang/Basic/DiagnosticKinds.def12
-rw-r--r--clang/lib/Lex/PPExpressions.cpp6
-rw-r--r--clang/lib/Parse/ParseExpr.cpp2
-rw-r--r--clang/lib/Parse/ParseExprCXX.cpp2
-rw-r--r--clang/lib/Parse/ParseStmt.cpp2
-rw-r--r--clang/lib/Parse/Parser.cpp2
-rw-r--r--clang/test/Parser/recovery-1.c2
-rw-r--r--clang/test/Parser/typeof.c2
-rw-r--r--clang/test/Sema/invalid-struct-init.c2
-rw-r--r--clang/test/SemaCXX/nested-name-spec.cpp2
-rw-r--r--clang/test/SemaCXX/new-delete.cpp2
-rw-r--r--clang/test/SemaObjC/invalid-typename.m2
-rw-r--r--clang/test/SemaObjC/property-9.m10
-rw-r--r--clang/test/SemaObjC/protocol-archane.m2
14 files changed, 25 insertions, 25 deletions
diff --git a/clang/include/clang/Basic/DiagnosticKinds.def b/clang/include/clang/Basic/DiagnosticKinds.def
index c3000f19bd5..45b0535dec1 100644
--- a/clang/include/clang/Basic/DiagnosticKinds.def
+++ b/clang/include/clang/Basic/DiagnosticKinds.def
@@ -37,6 +37,11 @@ DIAG(note_previous_use, NOTE,
DIAG(note_duplicate_case_prev, NOTE,
"previous case defined here")
+/// note_matching - this is used as a continuation of a previous diagnostic,
+/// e.g. to specify the '(' when we expected a ')'.
+DIAG(note_matching, NOTE,
+ "to match this '%0'")
+
//===----------------------------------------------------------------------===//
// Lexer Diagnostics
@@ -409,13 +414,6 @@ DIAG(err_expected_selector_for_method, ERROR,
DIAG(err_unexpected_at, ERROR,
"unexpected '@' in program")
-/// err_matching - this is used as a continuation of a previous error, e.g. to
-/// specify the '(' when we expected a ')'. This should probably be some
-/// special sort of diagnostic kind to indicate that it is the second half of
-/// the previous diagnostic.
-DIAG(err_matching, ERROR,
- "to match this '%0'")
-
/// Objective-C parser diagnostics
DIAG(err_unexpected_interface, ERROR,
"unexpected interface name '%0': expected expression")
diff --git a/clang/lib/Lex/PPExpressions.cpp b/clang/lib/Lex/PPExpressions.cpp
index 3eedf8cd98b..168c9d08adf 100644
--- a/clang/lib/Lex/PPExpressions.cpp
+++ b/clang/lib/Lex/PPExpressions.cpp
@@ -137,7 +137,7 @@ static bool EvaluateValue(PPValue &Result, Token &PeekTok, DefinedTracker &DT,
if (LParenLoc.isValid()) {
if (PeekTok.isNot(tok::r_paren)) {
PP.Diag(PeekTok.getLocation(), diag::err_pp_missing_rparen);
- PP.Diag(LParenLoc, diag::err_matching) << "(";
+ PP.Diag(LParenLoc, diag::note_matching) << "(";
return true;
}
// Consume the ).
@@ -261,7 +261,7 @@ static bool EvaluateValue(PPValue &Result, Token &PeekTok, DefinedTracker &DT,
if (PeekTok.isNot(tok::r_paren)) {
PP.Diag(PeekTok.getLocation(), diag::err_pp_expected_rparen)
<< Result.getRange();
- PP.Diag(Start, diag::err_matching) << "(";
+ PP.Diag(Start, diag::note_matching) << "(";
return true;
}
DT.State = DefinedTracker::Unknown;
@@ -606,7 +606,7 @@ static bool EvaluateDirectiveSubExpr(PPValue &LHS, unsigned MinPrec,
if (PeekTok.isNot(tok::colon)) {
PP.Diag(PeekTok.getLocation(), diag::err_expected_colon)
<< LHS.getRange(), RHS.getRange();
- PP.Diag(OpLoc, diag::err_matching) << "?";
+ PP.Diag(OpLoc, diag::note_matching) << "?";
return true;
}
// Consume the :.
diff --git a/clang/lib/Parse/ParseExpr.cpp b/clang/lib/Parse/ParseExpr.cpp
index 21b3dac038f..a379eeca2ee 100644
--- a/clang/lib/Parse/ParseExpr.cpp
+++ b/clang/lib/Parse/ParseExpr.cpp
@@ -271,7 +271,7 @@ Parser::ParseRHSOfBinaryExpression(ExprResult LHS, unsigned MinPrec) {
if (Tok.isNot(tok::colon)) {
Diag(Tok, diag::err_expected_colon);
- Diag(OpToken, diag::err_matching) << "?";
+ Diag(OpToken, diag::note_matching) << "?";
Actions.DeleteExpr(LHS.Val);
Actions.DeleteExpr(TernaryMiddle.Val);
return ExprResult(true);
diff --git a/clang/lib/Parse/ParseExprCXX.cpp b/clang/lib/Parse/ParseExprCXX.cpp
index 9eb2431642a..527aba20208 100644
--- a/clang/lib/Parse/ParseExprCXX.cpp
+++ b/clang/lib/Parse/ParseExprCXX.cpp
@@ -199,7 +199,7 @@ Parser::ExprResult Parser::ParseCXXCasts() {
SourceLocation RAngleBracketLoc = Tok.getLocation();
if (ExpectAndConsume(tok::greater, diag::err_expected_greater))
- return Diag(LAngleBracketLoc, diag::err_matching) << "<";
+ return Diag(LAngleBracketLoc, diag::note_matching) << "<";
SourceLocation LParenLoc = Tok.getLocation(), RParenLoc;
diff --git a/clang/lib/Parse/ParseStmt.cpp b/clang/lib/Parse/ParseStmt.cpp
index 221ad90273d..70062416fb3 100644
--- a/clang/lib/Parse/ParseStmt.cpp
+++ b/clang/lib/Parse/ParseStmt.cpp
@@ -733,7 +733,7 @@ Parser::StmtResult Parser::ParseDoStatement() {
ExitScope();
if (!Body.isInvalid) {
Diag(Tok, diag::err_expected_while);
- Diag(DoLoc, diag::err_matching) << "do";
+ Diag(DoLoc, diag::note_matching) << "do";
SkipUntil(tok::semi, false, true);
}
return true;
diff --git a/clang/lib/Parse/Parser.cpp b/clang/lib/Parse/Parser.cpp
index ae75266e041..4e27e718f87 100644
--- a/clang/lib/Parse/Parser.cpp
+++ b/clang/lib/Parse/Parser.cpp
@@ -71,7 +71,7 @@ SourceLocation Parser::MatchRHSPunctuation(tok::TokenKind RHSTok,
case tok::greater: LHSName = "<"; DID = diag::err_expected_greater; break;
}
Diag(Tok, DID);
- Diag(LHSLoc, diag::err_matching) << LHSName;
+ Diag(LHSLoc, diag::note_matching) << LHSName;
SkipUntil(RHSTok);
return R;
}
diff --git a/clang/test/Parser/recovery-1.c b/clang/test/Parser/recovery-1.c
index d70cdab364a..fa7892db2c0 100644
--- a/clang/test/Parser/recovery-1.c
+++ b/clang/test/Parser/recovery-1.c
@@ -1,7 +1,7 @@
// RUN: clang -fsyntax-only -fno-caret-diagnostics -pedantic %s 2>&1 | grep warning | wc -l | grep 1 &&
// RUN: clang -fsyntax-only -verify -pedantic %s
-char (((( /* expected-error {{to match this '('}} */
+char (((( /* expected-note {{to match this '('}} */
*X x ] )))); /* expected-error {{expected ')'}} */
; // expected-warning {{ISO C does not allow an extra ';' outside of a function}}
diff --git a/clang/test/Parser/typeof.c b/clang/test/Parser/typeof.c
index 3ea277559e0..1cf04baefd0 100644
--- a/clang/test/Parser/typeof.c
+++ b/clang/test/Parser/typeof.c
@@ -11,7 +11,7 @@ static void test() {
typeof(TInt) anInt;
short TInt eee; // expected-error{{parse error}}
void ary[7] fff; // expected-error{{array has incomplete element type 'void'}} expected-error{{parse error}}
- typeof(void ary[7]) anIntError; // expected-error{{expected ')'}} expected-error{{to match this '('}}
+ typeof(void ary[7]) anIntError; // expected-error{{expected ')'}} expected-note {{to match this '('}}
typeof(const int) aci;
const typeof (*pi) aConstInt;
int xx;
diff --git a/clang/test/Sema/invalid-struct-init.c b/clang/test/Sema/invalid-struct-init.c
index a3dc687acb7..fb965926943 100644
--- a/clang/test/Sema/invalid-struct-init.c
+++ b/clang/test/Sema/invalid-struct-init.c
@@ -15,7 +15,7 @@ static void zm_info_pcre(zend_module_entry *zend_module ) { }
static int zm_startup_pcre(int type, int module_number ) { }
static int zm_shutdown_pcre(int type, int module_number ) {
- zend_function_entry pcre_functions[] = {{ }; // expected-error{{expected '}'}} expected-error{{to match this '{'}}
+ zend_function_entry pcre_functions[] = {{ }; // expected-error{{expected '}'}} expected-note {{to match this '{'}}
zend_module_entry pcre_module_entry = {
sizeof(zend_module_entry), 20071006, 0, 0, ((void *)0), ((void *)0),
"pcre", pcre_functions, zm_startup_pcre, zm_shutdown_pcre, ((void *)0),
diff --git a/clang/test/SemaCXX/nested-name-spec.cpp b/clang/test/SemaCXX/nested-name-spec.cpp
index 8e7e17af9d9..b6032e64946 100644
--- a/clang/test/SemaCXX/nested-name-spec.cpp
+++ b/clang/test/SemaCXX/nested-name-spec.cpp
@@ -72,4 +72,4 @@ void f3() {
}
// make sure the following doesn't hit any asserts
-void f4(undef::C); // expected-error {{use of undeclared identifier 'undef'}} // expected-error {{expected ')'}} expected-error {{to match this '('}} // expected-error {{variable has incomplete type 'void'}}
+void f4(undef::C); // expected-error {{use of undeclared identifier 'undef'}} // expected-error {{expected ')'}} expected-note {{to match this '('}} // expected-error {{variable has incomplete type 'void'}}
diff --git a/clang/test/SemaCXX/new-delete.cpp b/clang/test/SemaCXX/new-delete.cpp
index 449fcee6489..60f77e4ef91 100644
--- a/clang/test/SemaCXX/new-delete.cpp
+++ b/clang/test/SemaCXX/new-delete.cpp
@@ -50,7 +50,7 @@ void bad_deletes()
{
delete 0; // expected-error {{cannot delete expression of type 'int'}}
delete [0] (int*)0; // expected-error {{expected ']'}} \
- // expected-error {{to match this '['}}
+ // expected-note {{to match this '['}}
delete (void*)0; // expected-error {{cannot delete expression}}
delete (T*)0; // expected-warning {{deleting pointer to incomplete type}}
}
diff --git a/clang/test/SemaObjC/invalid-typename.m b/clang/test/SemaObjC/invalid-typename.m
index 9996789e212..e4a5b4e600d 100644
--- a/clang/test/SemaObjC/invalid-typename.m
+++ b/clang/test/SemaObjC/invalid-typename.m
@@ -7,6 +7,6 @@
canBeginSyncingPlanWithId:(bycopy NSString *)planId
syncModes:(bycopy NSArray /* ISDSyncState */ *)syncModes
entities:(bycopy NSArray /* ISDEntity */ *)entities
- truthPullers:(bycopy NSDictionary /* NSString -> [NSString] */ *)truthPullers; // expected-error{{expected ')'}} expected-error{{to match this '('}}
+ truthPullers:(bycopy NSDictionary /* NSString -> [NSString] */ *)truthPullers; // expected-error{{expected ')'}} expected-note {{to match this '('}}
@end
diff --git a/clang/test/SemaObjC/property-9.m b/clang/test/SemaObjC/property-9.m
index 03c2ba05ae7..9275b51d25b 100644
--- a/clang/test/SemaObjC/property-9.m
+++ b/clang/test/SemaObjC/property-9.m
@@ -50,14 +50,16 @@ typedef signed char BOOL;
// test parser recovery: rdar://6254579
-@property (readonly getter=isAwesome) // expected-error {{error: expected ')'}} \
- // expected-error {{to match this '('}}
+@property ( // expected-note {{to match this '('}}
+ readonly getter=isAwesome) // expected-error {{error: expected ')'}}
+
int _awesome;
@property (readonlyx) // expected-error {{unknown property attribute 'readonlyx'}}
int _awesome2;
-@property (+) // expected-error {{error: expected ')'}} \
- // expected-error {{to match this '('}}
+@property ( // expected-note {{to match this '('}}
+ +) // expected-error {{error: expected ')'}}
+
int _awesome3;
@end
diff --git a/clang/test/SemaObjC/protocol-archane.m b/clang/test/SemaObjC/protocol-archane.m
index 19736cdf505..67e1c231f68 100644
--- a/clang/test/SemaObjC/protocol-archane.m
+++ b/clang/test/SemaObjC/protocol-archane.m
@@ -6,7 +6,7 @@
@end
void foo(id x) {
- bar((short<SomeProtocol>)x); // expected-error {{expected ')'}} expected-error {{to match this '('}}
+ bar((short<SomeProtocol>)x); // expected-error {{expected ')'}} expected-note {{to match this '('}}
bar((<SomeProtocol>)x); // expected-warning {{protocol qualifiers without 'id' is archaic}}
[(<SomeProtocol>)x bar]; // expected-warning {{protocol qualifiers without 'id' is archaic}}
OpenPOWER on IntegriCloud