mirror of https://github.com/microsoft/clang.git
Warn about more than the first unused variable when -Werror is set.
To do this, thread DiagnosticErrorTrap's hasUnrecoverableErrorOccurred through to Scope. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178294 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
edd2cb381e
commit
59d8ccb45e
|
@ -240,7 +240,11 @@ public:
|
|||
void setEntity(void *E) { Entity = E; }
|
||||
|
||||
bool hasErrorOccurred() const { return ErrorTrap.hasErrorOccurred(); }
|
||||
|
||||
|
||||
bool hasUnrecoverableErrorOccurred() const {
|
||||
return ErrorTrap.hasUnrecoverableErrorOccurred();
|
||||
}
|
||||
|
||||
/// isClassScope - Return true if this scope is a class/struct/union scope.
|
||||
bool isClassScope() const {
|
||||
return (getFlags() & Scope::ClassScope);
|
||||
|
|
|
@ -1389,7 +1389,7 @@ void Sema::ActOnPopScope(SourceLocation Loc, Scope *S) {
|
|||
if (!D->getDeclName()) continue;
|
||||
|
||||
// Diagnose unused variables in this scope.
|
||||
if (!S->hasErrorOccurred())
|
||||
if (!S->hasUnrecoverableErrorOccurred())
|
||||
DiagnoseUnusedDecl(D);
|
||||
|
||||
// If this was a forward reference to a label, verify it was defined.
|
||||
|
|
|
@ -0,0 +1,6 @@
|
|||
// RUN: %clang_cc1 -fsyntax-only -Wunused-variable -Werror -verify %s
|
||||
|
||||
void f() {
|
||||
int i; // expected-error{{unused}}
|
||||
int j; // expected-error{{unused}}
|
||||
}
|
Loading…
Reference in New Issue