File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -9060,7 +9060,7 @@ void Tokenizer::findGarbageCode() const
90609060 while (prev && prev->isName ())
90619061 prev = prev->previous ();
90629062 if (Token::Match (prev, " %op%|%num%|%str%|%char%" ))
9063- syntaxError (tok);
9063+ syntaxError (tok, prev == tok-> previous () ? (prev-> str () + " " + tok-> str ()) : (prev-> str () + " .. " + tok-> str ()) );
90649064 }
90659065
90669066 // case keyword must be inside switch
Original file line number Diff line number Diff line change @@ -1656,7 +1656,7 @@ class TestGarbage : public TestFixture {
16561656 void syntaxErrorFuzzerCliType1 () {
16571657 ASSERT_THROW (checkCode (" void f(){x=0,return return''[]()}" ), InternalError);
16581658 ASSERT_THROW (checkCode (" void f(){x='0'++'0'(return)[];}" ), InternalError); // #9063
1659- checkCode (" void f(){*(int *)42=0;}" );
1659+ checkCode (" void f(){*(int *)42=0;}" ); // no syntax error
16601660 ASSERT_THROW (checkCode (" void f() { x= 'x' > typedef name5 | ( , ;){ } (); }" ), InternalError); // #9067
16611661 ASSERT_THROW (checkCode (" void f() { x= {}( ) ( 'x')[ ] (); }" ), InternalError); // #9068
16621662 ASSERT_THROW (checkCode (" void f() { x= y{ } name5 y[ ] + y ^ name5 ^ name5 for ( ( y y y && y y y && name5 ++ int )); }" ), InternalError); // #9069
You can’t perform that action at this time.
0 commit comments