diff options
Diffstat (limited to 'preprocess.c')
| -rw-r--r-- | preprocess.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/preprocess.c b/preprocess.c index b43732b..36885ab 100644 --- a/preprocess.c +++ b/preprocess.c @@ -320,7 +320,18 @@ void pp_tokenize_all(Preprocessor* pp) { tok->raw.len = pp->pos - start; tok->raw.data = pp->src + pp->pos - tok->raw.len; } else if (pp->src[pp->pos] == '*') { - unimplemented(); + start = pp->pos - 1; + ++pp->pos; + while (pp->src[pp->pos]) { + if (pp->src[pp->pos] == '*' && pp->src[pp->pos + 1] == '/') { + pp->pos += 2; + break; + } + ++pp->pos; + } + tok->kind = PpTokenKind_whitespace; + tok->raw.len = pp->pos - start; + tok->raw.data = pp->src + pp->pos - tok->raw.len; } else { tok->kind = PpTokenKind_punctuator; tok->raw.len = 1; |
