1*fd3346dbSCongcong Cai // RUN: %check_clang_tidy -check-suffix=REMOVE %s modernize-use-auto %t -- \ 2*fd3346dbSCongcong Cai // RUN: -config="{CheckOptions: {modernize-use-auto.RemoveStars: 'true', modernize-use-auto.MinTypeNameLength: '0'}}" 3*fd3346dbSCongcong Cai // RUN: %check_clang_tidy %s modernize-use-auto %t -- \ 4*fd3346dbSCongcong Cai // RUN: -config="{CheckOptions: {modernize-use-auto.RemoveStars: 'false', modernize-use-auto.MinTypeNameLength: '0'}}" 5*fd3346dbSCongcong Cai pointerToFunction()6*fd3346dbSCongcong Caivoid pointerToFunction() { 7*fd3346dbSCongcong Cai void (*(*(f1)))() = static_cast<void (**)()>(nullptr); 8*fd3346dbSCongcong Cai // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use auto when initializing 9*fd3346dbSCongcong Cai // CHECK-FIXES-REMOVE: auto f1 = 10*fd3346dbSCongcong Cai // CHECK-FIXES: auto *f1 = 11*fd3346dbSCongcong Cai } 12*fd3346dbSCongcong Cai pointerToArray()13*fd3346dbSCongcong Caivoid pointerToArray() { 14*fd3346dbSCongcong Cai int(*a1)[2] = new int[10][2]; 15*fd3346dbSCongcong Cai // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use auto when initializing 16*fd3346dbSCongcong Cai // CHECK-FIXES-REMOVE: auto a1 = 17*fd3346dbSCongcong Cai // CHECK-FIXES: auto *a1 = 18*fd3346dbSCongcong Cai } 19*fd3346dbSCongcong Cai memberFunctionPointer()20*fd3346dbSCongcong Caivoid memberFunctionPointer() { 21*fd3346dbSCongcong Cai class A { 22*fd3346dbSCongcong Cai void f(); 23*fd3346dbSCongcong Cai }; 24*fd3346dbSCongcong Cai void(A::* a1)() = static_cast<void(A::*)()>(nullptr); 25*fd3346dbSCongcong Cai // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: use auto when initializing 26*fd3346dbSCongcong Cai // CHECK-FIXES-REMOVE: auto a1 = 27*fd3346dbSCongcong Cai // CHECK-FIXES: auto *a1 = 28*fd3346dbSCongcong Cai } 29*fd3346dbSCongcong Cai 30