summaryrefslogtreecommitdiff
path: root/preproc.c
diff options
context:
space:
mode:
Diffstat (limited to 'preproc.c')
-rw-r--r--preproc.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/preproc.c b/preproc.c
index 1d9e921..4cd1c5b 100644
--- a/preproc.c
+++ b/preproc.c
@@ -206,11 +206,11 @@ TokenPtrVec lex_level(RawLine* line, char until, PreprocArena* arena) {
continue;
}
+ Token* tok_ptr;
+
switch (line->str[line->pos]) {
case '\'':
- Chunk sqchunk = collect_single_quoted_section(line);
- Chunk* sqptr = push_to_ChunkVec(&arena->chunks, sqchunk);
- push_to_Word(&state.word_germ, sqptr);
+ push_to_Word(&state.word_germ, push_to_ChunkVec(&arena->chunks, collect_single_quoted_section(line)));
break;
case '\"':
lex_double_quoted_section(line, &state.word_germ, arena);
@@ -218,7 +218,7 @@ TokenPtrVec lex_level(RawLine* line, char until, PreprocArena* arena) {
case '|':
line->pos++;
close_word_and_lit_germs(&state, &line_toks, arena);
- Token* tok_ptr = push_to_TokenVec(&arena->tokens, (Token){.kind = TOK_SPECIAL, .as.spec = PIPE});
+ tok_ptr = push_to_TokenVec(&arena->tokens, (Token){.kind = TOK_SPECIAL, .as.spec = PIPE});
push_to_TokenPtrVec(&line_toks, tok_ptr);
break;
case '$':
@@ -245,17 +245,17 @@ TokenPtrVec lex_level(RawLine* line, char until, PreprocArena* arena) {
Region subreg = {.mode = CMDS, .tokens = sub_regtoks};
Region* subreg_ptr = push_to_RegionVec(&arena->regions, subreg);
Token tok = {.kind = TOK_PROCSUB_OUT, .as.procsub_region = subreg_ptr};
- Token* tok_ptr = push_to_TokenVec(&arena->tokens, tok);
+ tok_ptr = push_to_TokenVec(&arena->tokens, tok);
push_to_TokenPtrVec(&line_toks, tok_ptr);
break;
case '>':
line->pos++;
- Token* tok_ptr2 = push_to_TokenVec(&arena->tokens, (Token){.kind = TOK_SPECIAL, .as.spec = WRITE_REDIR_APPEND});
- push_to_TokenPtrVec(&line_toks, tok_ptr2);
+ tok_ptr = push_to_TokenVec(&arena->tokens, (Token){.kind = TOK_SPECIAL, .as.spec = WRITE_REDIR_APPEND});
+ push_to_TokenPtrVec(&line_toks, tok_ptr);
break;
default:
- Token* tok_ptr3 = push_to_TokenVec(&arena->tokens, (Token){.kind = TOK_SPECIAL, .as.spec = WRITE_REDIR_TRUNC});
- push_to_TokenPtrVec(&line_toks, tok_ptr3);
+ tok_ptr = push_to_TokenVec(&arena->tokens, (Token){.kind = TOK_SPECIAL, .as.spec = WRITE_REDIR_TRUNC});
+ push_to_TokenPtrVec(&line_toks, tok_ptr);
}
break;
case '<':