[cfe-commits] r112709 - in /cfe/trunk: lib/Parse/ParseStmt.cpp test/Sema/recover-goto.c test/SemaObjC/crash-label.m test/SemaObjC/method-no-context.m
Chris Lattner
sabre at nondot.org
Wed Sep 1 08:49:26 PDT 2010
Author: lattner
Date: Wed Sep 1 10:49:26 2010
New Revision: 112709
URL: http://llvm.org/viewvc/llvm-project?rev=112709&view=rev
Log:
when emitting an error about a missing } in a compound statement, emit
a "to match this {" note, pointing out the opener.
Modified:
cfe/trunk/lib/Parse/ParseStmt.cpp
cfe/trunk/test/Sema/recover-goto.c
cfe/trunk/test/SemaObjC/crash-label.m
cfe/trunk/test/SemaObjC/method-no-context.m
Modified: cfe/trunk/lib/Parse/ParseStmt.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Parse/ParseStmt.cpp?rev=112709&r1=112708&r2=112709&view=diff
==============================================================================
--- cfe/trunk/lib/Parse/ParseStmt.cpp (original)
+++ cfe/trunk/lib/Parse/ParseStmt.cpp Wed Sep 1 10:49:26 2010
@@ -519,6 +519,7 @@
// We broke out of the while loop because we found a '}' or EOF.
if (Tok.isNot(tok::r_brace)) {
Diag(Tok, diag::err_expected_rbrace);
+ Diag(LBraceLoc, diag::note_matching) << "{";
return StmtError();
}
Modified: cfe/trunk/test/Sema/recover-goto.c
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Sema/recover-goto.c?rev=112709&r1=112708&r2=112709&view=diff
==============================================================================
--- cfe/trunk/test/Sema/recover-goto.c (original)
+++ cfe/trunk/test/Sema/recover-goto.c Wed Sep 1 10:49:26 2010
@@ -1,4 +1,5 @@
// RUN: %clang_cc1 -fsyntax-only %s -verify
-void a() {goto A; // expected-error {{use of undeclared label}}
+void a() { // expected-note {{to match this '{'}}
+ goto A; // expected-error {{use of undeclared label}}
// expected-error {{expected '}'}}
Modified: cfe/trunk/test/SemaObjC/crash-label.m
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/SemaObjC/crash-label.m?rev=112709&r1=112708&r2=112709&view=diff
==============================================================================
--- cfe/trunk/test/SemaObjC/crash-label.m (original)
+++ cfe/trunk/test/SemaObjC/crash-label.m Wed Sep 1 10:49:26 2010
@@ -2,8 +2,9 @@
- (NSDictionary*) _executeScript:(NSString *)source { // expected-error 2 {{expected a type}} \
// expected-error {{missing context for method declaration}}
- Exit: [nilArgs release]; // expected-error {{use of undeclared identifier}}
- }
- - (NSDictionary *) _setupKernelStandardMode:(NSString *)source { // expected-error 2 {{expected a type}} \
-expected-error {{missing context for method declaration}}
- Exit: if(_ciKernel && !success ) { // expected-error {{use of undeclared identifier}} // expected-error 2 {{expected}}
+Exit: [nilArgs release]; // expected-error {{use of undeclared identifier}}
+}
+- (NSDictionary *) _setupKernelStandardMode:(NSString *)source { // expected-error 2 {{expected a type}} \
+expected-error {{missing context for method declaration}} \
+expected-note{{to match this '{'}}
+ Exit: if(_ciKernel && !success ) { // expected-error {{use of undeclared identifier}} // expected-error 2 {{expected}} expected-note{{to match this '{'}}
Modified: cfe/trunk/test/SemaObjC/method-no-context.m
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/SemaObjC/method-no-context.m?rev=112709&r1=112708&r2=112709&view=diff
==============================================================================
--- cfe/trunk/test/SemaObjC/method-no-context.m (original)
+++ cfe/trunk/test/SemaObjC/method-no-context.m Wed Sep 1 10:49:26 2010
@@ -1,4 +1,5 @@
// RUN: %clang_cc1 -fsyntax-only -verify %s
-- im0 { int a; return 0; // expected-error{{missing context for method declaration}}
+- im0 { // expected-note{{to match this '{'}} expected-error{{missing context for method declaration}}
+ int a; return 0;
// expected-error{{expected '}'}}
More information about the cfe-commits
mailing list