]> granicus.if.org Git - clang/commitdiff
Fix PR2090, a typo in digraph processing.
authorChris Lattner <sabre@nondot.org>
Sun, 24 Feb 2008 19:05:57 +0000 (19:05 +0000)
committerChris Lattner <sabre@nondot.org>
Sun, 24 Feb 2008 19:05:57 +0000 (19:05 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@47540 91177308-0d34-0410-b5e6-96231b3b80d8

Lex/Lexer.cpp
test/Lexer/digraph.cpp [new file with mode: 0644]

index 3439356b560a5a086cc42cea5bbbbf875efe02de..98bbb386305d24684ac2690ff57f888328db4a37 100644 (file)
@@ -1529,7 +1529,7 @@ LexNextToken:
     } else if (Features.Digraphs && Char == ':') {
       Result.setKind(tok::l_square); // '<:' -> '['
       CurPtr = ConsumeChar(CurPtr, SizeTmp, Result);
-    } else if (Features.Digraphs && Char == '>') {
+    } else if (Features.Digraphs && Char == '%') {
       Result.setKind(tok::l_brace); // '<%' -> '{'
       CurPtr = ConsumeChar(CurPtr, SizeTmp, Result);
     } else {
diff --git a/test/Lexer/digraph.cpp b/test/Lexer/digraph.cpp
new file mode 100644 (file)
index 0000000..07c085a
--- /dev/null
@@ -0,0 +1,15 @@
+// RUN: clang -fsyntax-only %s
+
+%:include <stdio.h>
+
+    %:ifndef BUFSIZE
+     %:define BUFSIZE  512
+    %:endif
+
+    void copy(char d<::>, const char s<::>, int len)
+    <%
+        while (len-- >= 0)
+        <%
+            d<:len:> = s<:len:>;
+        %>
+    %>