diff --git a/lib/tokenize.cpp b/lib/tokenize.cpp index 544d5f5ab..3915fb30a 100644 --- a/lib/tokenize.cpp +++ b/lib/tokenize.cpp @@ -3118,7 +3118,8 @@ void Tokenizer::simplifyFunctionParameters() } } - tok = tok ? tok->link() : 0; + if (Token::simpleMatch(tok, "{")) + tok = tok->link(); if (tok == NULL) { diff --git a/test/testtokenize.cpp b/test/testtokenize.cpp index e8341aae4..79d1a7cde 100644 --- a/test/testtokenize.cpp +++ b/test/testtokenize.cpp @@ -1939,6 +1939,11 @@ private: ASSERT_EQUALS(code, tokenizeAndStringify(code, true)); } + { + const char code[] = "module ( a , a , sizeof ( a ) , 0444 ) ;"; + ASSERT_EQUALS(code, tokenizeAndStringify(code, true)); + } + ASSERT_EQUALS("void f ( int x ) { }", tokenizeAndStringify("void f(x) int x; { }", true)); ASSERT_EQUALS("void f ( int x , char y ) { }", tokenizeAndStringify("void f(x,y) int x; char y; { }", true));