Author: alexfh Date: Mon Feb 3 09:55:35 2014 New Revision: 200702 URL: http://llvm.org/viewvc/llvm-project?rev=200702&view=rev Log: Fix crash when handling an argument parsing-related warning.
Summary: Don't crash on warnings coming before the translation unit starts. Reviewers: klimek, djasper Reviewed By: djasper CC: cfe-commits Differential Revision: http://llvm-reviews.chandlerc.com/D2676 Added: clang-tools-extra/trunk/test/clang-tidy/diagnostic.cpp Modified: clang-tools-extra/trunk/clang-tidy/ClangTidyDiagnosticConsumer.cpp Modified: clang-tools-extra/trunk/clang-tidy/ClangTidyDiagnosticConsumer.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clang-tidy/ClangTidyDiagnosticConsumer.cpp?rev=200702&r1=200701&r2=200702&view=diff ============================================================================== --- clang-tools-extra/trunk/clang-tidy/ClangTidyDiagnosticConsumer.cpp (original) +++ clang-tools-extra/trunk/clang-tidy/ClangTidyDiagnosticConsumer.cpp Mon Feb 3 09:55:35 2014 @@ -82,7 +82,9 @@ void ClangTidyDiagnosticConsumer::Handle // FIXME: Demultiplex diagnostics. // FIXME: Ensure that we don't get notes from user code related to errors // from non-user code. - if (Diags->getSourceManager().isInSystemHeader(Info.getLocation())) + // Let argument parsing-related warnings through. + if (Diags->hasSourceManager() && + Diags->getSourceManager().isInSystemHeader(Info.getLocation())) return; if (DiagLevel != DiagnosticsEngine::Note) { Errors.push_back( Added: clang-tools-extra/trunk/test/clang-tidy/diagnostic.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/test/clang-tidy/diagnostic.cpp?rev=200702&view=auto ============================================================================== --- clang-tools-extra/trunk/test/clang-tidy/diagnostic.cpp (added) +++ clang-tools-extra/trunk/test/clang-tidy/diagnostic.cpp Mon Feb 3 09:55:35 2014 @@ -0,0 +1,5 @@ +// RUN: grep -Ev "// *[A-Z-]+:" %s > %t.cpp +// RUN: clang-tidy %t.cpp -- -fan-unknown-option > %t2.cpp +// RUN: FileCheck -input-file=%t2.cpp %s + +// CHECK: warning: unknown argument: '-fan-unknown-option' _______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
