diff options
-rw-r--r-- | preproc.c | 9 |
1 files changed, 7 insertions, 2 deletions
@@ -3678,8 +3678,13 @@ static bool paste_tokens(Token **head, const struct tokseq_match *m, while (t && (t->type == TOK_WHITESPACE || t->type == TOK_PASTE)) t = *tail = delete_Token(t); - if (!paste_head || !t) - break; /* Nothing to paste with */ + if (!t) { /* Dangling %+ term */ + if (paste_head) + (*paste_head)->next = NULL; + else + *head = NULL; + return did_paste; + } tail = paste_head; t = *tail; tt = t->next; |