summaryrefslogtreecommitdiffstats
path: root/clang/lib/Basic
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2009-03-12 10:14:16 +0000
committerDaniel Dunbar <daniel@zuster.org>2009-03-12 10:14:16 +0000
commit4f495980c41b81a013e7bb4ab9a98694799f6e91 (patch)
tree970c27c7403316656cb3e2092ee2d482c42919d8 /clang/lib/Basic
parent4ef9bc053ac253ccf76a8a211ab022ce09bff16a (diff)
downloadbcm5719-llvm-4f495980c41b81a013e7bb4ab9a98694799f6e91.tar.gz
bcm5719-llvm-4f495980c41b81a013e7bb4ab9a98694799f6e91.zip
Add Diagnostic files for Frontend and move a couple errors over.
- Notably, clang now exits with an error if it can't find a file. This flushed out a bug in the CGColorSpace.c test case. :) llvm-svn: 66789
Diffstat (limited to 'clang/lib/Basic')
-rw-r--r--clang/lib/Basic/Diagnostic.cpp16
1 files changed, 14 insertions, 2 deletions
diff --git a/clang/lib/Basic/Diagnostic.cpp b/clang/lib/Basic/Diagnostic.cpp
index 3e3802ae20a..890b0c2ca5b 100644
--- a/clang/lib/Basic/Diagnostic.cpp
+++ b/clang/lib/Basic/Diagnostic.cpp
@@ -48,6 +48,10 @@ static unsigned char DiagnosticFlagsDriver[] = {
#include "clang/Basic/DiagnosticDriverKinds.def"
0
};
+static unsigned char DiagnosticFlagsFrontend[] = {
+#include "clang/Basic/DiagnosticFrontendKinds.def"
+ 0
+};
static unsigned char DiagnosticFlagsLex[] = {
#include "clang/Basic/DiagnosticLexKinds.def"
0
@@ -78,8 +82,10 @@ static unsigned getBuiltinDiagClass(unsigned DiagID) {
unsigned res;
if (DiagID < diag::DIAG_START_DRIVER)
res = DiagnosticFlagsCommon[DiagID];
- else if (DiagID < diag::DIAG_START_LEX)
+ else if (DiagID < diag::DIAG_START_FRONTEND)
res = DiagnosticFlagsDriver[DiagID - diag::DIAG_START_DRIVER - 1];
+ else if (DiagID < diag::DIAG_START_LEX)
+ res = DiagnosticFlagsFrontend[DiagID - diag::DIAG_START_FRONTEND - 1];
else if (DiagID < diag::DIAG_START_PARSE)
res = DiagnosticFlagsLex[DiagID - diag::DIAG_START_LEX - 1];
else if (DiagID < diag::DIAG_START_AST)
@@ -104,6 +110,10 @@ static const char * const DiagnosticTextDriver[] = {
#include "clang/Basic/DiagnosticDriverKinds.def"
0
};
+static const char * const DiagnosticTextFrontend[] = {
+#include "clang/Basic/DiagnosticFrontendKinds.def"
+ 0
+};
static const char * const DiagnosticTextLex[] = {
#include "clang/Basic/DiagnosticLexKinds.def"
0
@@ -249,8 +259,10 @@ bool Diagnostic::isBuiltinNote(unsigned DiagID) {
const char *Diagnostic::getDescription(unsigned DiagID) const {
if (DiagID < diag::DIAG_START_DRIVER)
return DiagnosticTextCommon[DiagID];
- else if (DiagID < diag::DIAG_START_LEX)
+ else if (DiagID < diag::DIAG_START_FRONTEND)
return DiagnosticTextDriver[DiagID - diag::DIAG_START_DRIVER - 1];
+ else if (DiagID < diag::DIAG_START_LEX)
+ return DiagnosticTextFrontend[DiagID - diag::DIAG_START_FRONTEND - 1];
else if (DiagID < diag::DIAG_START_PARSE)
return DiagnosticTextLex[DiagID - diag::DIAG_START_LEX - 1];
else if (DiagID < diag::DIAG_START_AST)
OpenPOWER on IntegriCloud