Author: alexfh Date: Tue Jan 24 05:40:23 2017 New Revision: 292917 URL: http://llvm.org/viewvc/llvm-project?rev=292917&view=rev Log: [clang-tidy] Add more tests for modernize-use-using.
Modified: clang-tools-extra/trunk/test/clang-tidy/modernize-use-using.cpp Modified: clang-tools-extra/trunk/test/clang-tidy/modernize-use-using.cpp URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/test/clang-tidy/modernize-use-using.cpp?rev=292917&r1=292916&r2=292917&view=diff ============================================================================== --- clang-tools-extra/trunk/test/clang-tidy/modernize-use-using.cpp (original) +++ clang-tools-extra/trunk/test/clang-tidy/modernize-use-using.cpp Tue Jan 24 05:40:23 2017 @@ -94,3 +94,45 @@ typedef Foo Bar; // CHECK-MESSAGES: :[[@LINE-1]]:1: warning: use 'using' instead of 'typedef' // CHECK-FIXES: #define Bar Baz // CHECK-FIXES: using Baz = Foo; + +#define TYPEDEF typedef +TYPEDEF Foo Bak; +// CHECK-MESSAGES: :[[@LINE-1]]:1: warning: use 'using' instead of 'typedef' +// CHECK-FIXES: #define TYPEDEF typedef +// CHECK-FIXES: TYPEDEF Foo Bak; + +#define FOO Foo +typedef FOO Bam; +// CHECK-MESSAGES: :[[@LINE-1]]:1: warning: use 'using' instead of 'typedef' +// CHECK-FIXES: #define FOO Foo +// CHECK-FIXES: using Bam = Foo; + +typedef struct Foo Bap; +// CHECK-MESSAGES: :[[@LINE-1]]:1: warning: use 'using' instead of 'typedef' +// CHECK-FIXES: using Bap = struct Foo; + +struct Foo typedef Bap2; +// CHECK-MESSAGES: :[[@LINE-1]]:1: warning: use 'using' instead of 'typedef' +// CHECK-FIXES: using Bap2 = struct Foo; + +Foo typedef Bap3; +// CHECK-MESSAGES: :[[@LINE-1]]:1: warning: use 'using' instead of 'typedef' +// CHECK-FIXES: using Bap3 = Foo; + +typedef struct Unknown Baq; +// CHECK-MESSAGES: :[[@LINE-1]]:1: warning: use 'using' instead of 'typedef' +// CHECK-FIXES: using Baq = struct Unknown; + +struct Unknown2 typedef Baw; +// CHECK-MESSAGES: :[[@LINE-1]]:1: warning: use 'using' instead of 'typedef' +// CHECK-FIXES: using Baw = struct Unknown2; + +int typedef Bax; +// CHECK-MESSAGES: :[[@LINE-1]]:1: warning: use 'using' instead of 'typedef' +// CHECK-FIXES: using Bax = int; + +// FIXME: Avoid incorrect fixes in these cases. +//typedef struct Q1 { int a; } S1; +//typedef struct { int b; } S2; +//struct Q2 { int c; } typedef S3; +//struct { int d; } typedef S4; _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits