File tree Expand file tree Collapse file tree 2 files changed +16
-1
lines changed Expand file tree Collapse file tree 2 files changed +16
-1
lines changed Original file line number Diff line number Diff line change @@ -786,6 +786,10 @@ namespace {
786
786
tok2 = insertTokens (tok2, mRangeTypeQualifiers );
787
787
Token* tok3 = tok2->insertToken (" )" );
788
788
Token::createMutualLinks (tok, tok3);
789
+ tok->insertTokenBefore (" (" );
790
+ tok3 = tok3->linkAt (1 );
791
+ tok3 = tok3->insertToken (" )" );
792
+ Token::createMutualLinks (tok->tokAt (-1 ), tok3);
789
793
}
790
794
return ;
791
795
}
Original file line number Diff line number Diff line change @@ -3387,7 +3387,7 @@ class TestSimplifyTypedef : public TestFixture {
3387
3387
// #11430
3388
3388
const char code3[] = " typedef char* T;\n "
3389
3389
" T f() { return T(\" abc\" ); }\n " ;
3390
- ASSERT_EQUALS (" char * f ( ) { return ( char * ) ( \" abc\" ) ; }" , tok (code3));
3390
+ ASSERT_EQUALS (" char * f ( ) { return ( ( char * ) ( \" abc\" ) ) ; }" , tok (code3));
3391
3391
3392
3392
const char code4[] = " typedef struct _a *A;\n " // #13104
3393
3393
" typedef struct _b* B;\n "
@@ -3399,6 +3399,17 @@ class TestSimplifyTypedef : public TestFixture {
3399
3399
ASSERT_EQUALS (" extern struct _a * ( * get ) ( struct _b * ) ; "
3400
3400
" struct _a * f ( ) { return get ( 0 ) ; }" ,
3401
3401
tok (code4));
3402
+
3403
+ const char code5[] = " struct S { int x; };\n " // #13182
3404
+ " typedef S* PS;\n "
3405
+ " void f(void* a[], int i) {\n "
3406
+ " PS(a[i])->x = i;\n "
3407
+ " }\n " ;
3408
+ ASSERT_EQUALS (" struct S { int x ; } ; "
3409
+ " void f ( void * a [ ] , int i ) { "
3410
+ " ( ( S * ) ( a [ i ] ) ) . x = i ; "
3411
+ " }" ,
3412
+ tok (code5));
3402
3413
}
3403
3414
3404
3415
void simplifyTypedef143 () { // #11506
You can’t perform that action at this time.
0 commit comments