From 99aa43a28e527ac89eef26f5aba5b0989ab5da35 Mon Sep 17 00:00:00 2001 From: Shagun Agrawal Date: Mon, 30 Dec 2024 21:06:27 +0530 Subject: Fix lexer bug, pass parsing stage --- src/cljcc/lexer.clj | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) (limited to 'src/cljcc/lexer.clj') diff --git a/src/cljcc/lexer.clj b/src/cljcc/lexer.clj index d4e20d3..ef4235f 100644 --- a/src/cljcc/lexer.clj +++ b/src/cljcc/lexer.clj @@ -67,12 +67,31 @@ slurp lex) - (lex "int x = 100;") + (lex "int x = 100l;") + + (lex " + if (!sign_extend(10, 10l)) { + return 1; + } +") + (lex " int main(void) { - return 2- -1; + if (!sign_extend(10, 10l)) { + return 1; + } + + if (!sign_extend(-10, -10l)) { + return 2; + } + + long l = (long) 100; + if (l != 100l) { + return 3; + } + return 0; } ") -- cgit v1.2.3