diff options
| -rw-r--r-- | main.c | 2 | ||||
| -rw-r--r-- | tests/043.sh | 17 |
2 files changed, 18 insertions, 1 deletions
@@ -214,7 +214,7 @@ struct Token* tokenize(char* src) { tok->kind = TK_L_INT; tok->value = calloc(pos - start + 1, sizeof(char)); memcpy(tok->value, src + start, pos - start); - } else if (isalpha(c)) { + } else if (isalpha(c) || c == '_') { pos -= 1; start = pos; while (isalnum(src[pos]) || src[pos] == '_') { diff --git a/tests/043.sh b/tests/043.sh new file mode 100644 index 0000000..a343918 --- /dev/null +++ b/tests/043.sh @@ -0,0 +1,17 @@ +set -e + +cat <<'EOF' > expected +42,123 +EOF +bash ../../test_diff.sh <<'EOF' +int printf(); + +int main() { + int _a = 42; + int _b = 123; + + printf("%d,%d\n", _a, _b); + + return 0; +} +EOF |
