diff options
| author | Shagun Agrawal <agrawalshagun07@gmail.com> | 2024-12-30 21:06:27 +0530 |
|---|---|---|
| committer | Shagun Agrawal <agrawalshagun07@gmail.com> | 2024-12-30 21:06:27 +0530 |
| commit | 99aa43a28e527ac89eef26f5aba5b0989ab5da35 (patch) | |
| tree | 17a44a21a5129c13abb3868fb49670f1a052faa4 /src/cljcc/lexer.clj | |
| parent | 6a94b6abab645269c596154ce6812cbeb3811ec5 (diff) | |
Fix lexer bug, pass parsing stage
Diffstat (limited to 'src/cljcc/lexer.clj')
| -rw-r--r-- | src/cljcc/lexer.clj | 23 |
1 files changed, 21 insertions, 2 deletions
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; } ") |
