[cfe-commits] r99624 - in /cfe/trunk: lib/Lex/TokenConcatenation.cpp test/Preprocessor/output_paste_avoid.c
Chris Lattner
sabre at nondot.org
Fri Mar 26 10:10:02 PDT 2010
Author: lattner
Date: Fri Mar 26 12:10:02 2010
New Revision: 99624
URL: http://llvm.org/viewvc/llvm-project?rev=99624&view=rev
Log:
fix a bug in paste avoidance which would cause us to accidentally
form a >>=. Patch by Abramo Bagnara, testcase by me.
Modified:
cfe/trunk/lib/Lex/TokenConcatenation.cpp
cfe/trunk/test/Preprocessor/output_paste_avoid.c
Modified: cfe/trunk/lib/Lex/TokenConcatenation.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Lex/TokenConcatenation.cpp?rev=99624&r1=99623&r2=99624&view=diff
==============================================================================
--- cfe/trunk/lib/Lex/TokenConcatenation.cpp (original)
+++ cfe/trunk/lib/Lex/TokenConcatenation.cpp Fri Mar 26 12:10:02 2010
@@ -85,7 +85,7 @@
TokenInfo[tok::star ] |= aci_avoid_equal; // *=
TokenInfo[tok::exclaim ] |= aci_avoid_equal; // !=
TokenInfo[tok::lessless ] |= aci_avoid_equal; // <<=
- TokenInfo[tok::greaterequal] |= aci_avoid_equal; // >>=
+ TokenInfo[tok::greatergreater] |= aci_avoid_equal; // >>=
TokenInfo[tok::caret ] |= aci_avoid_equal; // ^=
TokenInfo[tok::equal ] |= aci_avoid_equal; // ==
}
Modified: cfe/trunk/test/Preprocessor/output_paste_avoid.c
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Preprocessor/output_paste_avoid.c?rev=99624&r1=99623&r2=99624&view=diff
==============================================================================
--- cfe/trunk/test/Preprocessor/output_paste_avoid.c (original)
+++ cfe/trunk/test/Preprocessor/output_paste_avoid.c Fri Mar 26 12:10:02 2010
@@ -24,3 +24,7 @@
// Should expand to L "str" not L"str"
// CHECK: E: L "str"
+// Should avoid producing >>=.
+#define equal =
+F: >>equal
+// CHECK: F: >> =
More information about the cfe-commits
mailing list