diff --git a/tccpp.c b/tccpp.c index 897ef15..9cba15a 100644 --- a/tccpp.c +++ b/tccpp.c @@ -1726,6 +1726,7 @@ static void pragma_parse(TCCState *s1) #pragma pack(1) // set #pragma pack() // reset to default #pragma pack(push,1) // push & set + #pragma pack(push) // push only #pragma pack(pop) // restore previous */ next(); skip('('); @@ -1744,6 +1745,8 @@ static void pragma_parse(TCCState *s1) if (s1->pack_stack_ptr >= s1->pack_stack + PACK_STACK_SIZE - 1) goto stk_error; s1->pack_stack_ptr++; + if (tok == ')') + return; skip(','); } if (tok != TOK_CINT)