summaryrefslogtreecommitdiffstats
path: root/clang/lib/Lex/Preprocessor.cpp
diff options
context:
space:
mode:
authorNico Weber <nicolasweber@gmx.de>2008-08-10 19:59:06 +0000
committerNico Weber <nicolasweber@gmx.de>2008-08-10 19:59:06 +0000
commit4c3116437cc19d05b3031b8e99566ef47bf463e8 (patch)
treea6f8b9aed87ba5053d4400387feaf2970bbae916 /clang/lib/Lex/Preprocessor.cpp
parentcb1e06e8fda6d896c7b3031c220fb10e45b30049 (diff)
downloadbcm5719-llvm-4c3116437cc19d05b3031b8e99566ef47bf463e8.tar.gz
bcm5719-llvm-4c3116437cc19d05b3031b8e99566ef47bf463e8.zip
* Remove isInSystemHeader() from DiagClient, move it to SourceManager
* Move FormatError() from TextDiagnostic up to DiagClient, remove now empty class TextDiagnostic * Make DiagClient optional for Diagnostic This fixes the following problems: * -html-diags (and probably others) does now output the same set of warnings as console clang does * nothing crashes if one forgets to call setHeaderSearch() on TextDiagnostic * some code duplication is removed llvm-svn: 54620
Diffstat (limited to 'clang/lib/Lex/Preprocessor.cpp')
-rw-r--r--clang/lib/Lex/Preprocessor.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/clang/lib/Lex/Preprocessor.cpp b/clang/lib/Lex/Preprocessor.cpp
index 33c94b6e8ad..bc284427840 100644
--- a/clang/lib/Lex/Preprocessor.cpp
+++ b/clang/lib/Lex/Preprocessor.cpp
@@ -115,6 +115,17 @@ Preprocessor::~Preprocessor() {
delete Callbacks;
}
+bool Preprocessor::isSystemHeader(const FileEntry* F) const {
+ if (F) {
+ DirectoryLookup::DirType DirInfo = HeaderInfo.getFileDirFlavor(F);
+ if (DirInfo == DirectoryLookup::SystemHeaderDir ||
+ DirInfo == DirectoryLookup::ExternCSystemHeaderDir)
+ return true;
+ }
+ return false;
+}
+
+
/// Diag - Forwarding function for diagnostics. This emits a diagnostic at
/// the specified Token's location, translating the token's start
/// position in the current buffer into a SourcePosition object for rendering.
OpenPOWER on IntegriCloud