Skip to content

Commit 8922368

Browse files
committed
Fix handling of empty variadic parameters, add test
1 parent 9fd5f63 commit 8922368

2 files changed

Lines changed: 4 additions & 1 deletion

File tree

simplecpp.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1956,7 +1956,7 @@ namespace simplecpp {
19561956
const Token *endToken2;
19571957

19581958
if (variadicOpt) {
1959-
if (parametertokens2.size() > args.size() && parametertokens2.front()->next->op != ')')
1959+
if (parametertokens2.size() > args.size() && parametertokens2[args.size() - 1]->next->op != ')')
19601960
valueToken2 = optExpandValue->cfront();
19611961
else
19621962
valueToken2 = optNoExpandValue->cfront();

testsuite/clang-preprocessor-tests/macro_fn_va_opt.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,4 +6,7 @@
66
int main()
77
{
88
PF( "%s", "Hello" );
9+
PF( a, );
10+
PF( a );
11+
PF( , );
912
}

0 commit comments

Comments
 (0)