summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2009-04-07 18:18:09 +0000
committerChris Lattner <sabre@nondot.org>2009-04-07 18:18:09 +0000
commit84d573f256342bb509bddea6f04836c469c68831 (patch)
treeba57f141e2764f76b56f9a45a9e5785497664290
parent73312b3f395f47b64786ec44b868fe0230545803 (diff)
downloadbcm5719-llvm-84d573f256342bb509bddea6f04836c469c68831.tar.gz
bcm5719-llvm-84d573f256342bb509bddea6f04836c469c68831.zip
add a warning for this crazy case, as suggested by Eli.
llvm-svn: 68524
-rw-r--r--clang/tools/clang-cc/clang-cc.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/clang/tools/clang-cc/clang-cc.cpp b/clang/tools/clang-cc/clang-cc.cpp
index 5a5ffc32af9..d257c432fc6 100644
--- a/clang/tools/clang-cc/clang-cc.cpp
+++ b/clang/tools/clang-cc/clang-cc.cpp
@@ -972,7 +972,13 @@ static void DefineBuiltinMacro(std::vector<char> &Buf, const char *Macro,
// Per GCC -D semantics, the macro ends at \n if it exists.
const char *End = strpbrk(Equal, "\n\r");
- if (End == 0) End = Equal+strlen(Equal);
+ if (End) {
+ fprintf(stderr, "warning: macro '%s' contains embeded newline, text "
+ "after the newline is ignored.\n",
+ std::string(Macro, Equal).c_str());
+ } else {
+ End = Equal+strlen(Equal);
+ }
Buf.insert(Buf.end(), Equal+1, End);
} else {
OpenPOWER on IntegriCloud