xref: /llvm-project/clang-tools-extra/test/clang-tidy/checkers/misc/unused-parameters.c (revision 89a1d03e2b379e325daa5249411e414bbd995b5e)
1*89a1d03eSRichard // RUN: %check_clang_tidy %s misc-unused-parameters %t -- -- -Wno-strict-prototypes -xc
2*89a1d03eSRichard 
3*89a1d03eSRichard // Basic removal
4*89a1d03eSRichard // =============
a(int i)5*89a1d03eSRichard void a(int i) {;}
6*89a1d03eSRichard // CHECK-MESSAGES: :[[@LINE-1]]:12: warning: parameter 'i' is unused [misc-unused-parameters]
7*89a1d03eSRichard // CHECK-FIXES: {{^}}void a(int i) {;}{{$}}
8*89a1d03eSRichard 
9*89a1d03eSRichard static void b(); // In C, forward declarations can leave out parameters.
b(int i)10*89a1d03eSRichard static void b(int i) {;}
11*89a1d03eSRichard // CHECK-MESSAGES: :[[@LINE-1]]:19: warning: parameter 'i' is unused [misc-unused-parameters]
12*89a1d03eSRichard // CHECK-FIXES: {{^}}static void b() {;}{{$}}
13*89a1d03eSRichard 
14*89a1d03eSRichard // Unchanged cases
15*89a1d03eSRichard // ===============
h(i,c,d)16*89a1d03eSRichard void h(i, c, d) int i; char *c, *d; {} // Don't mess with K&R style
17*89a1d03eSRichard 
18*89a1d03eSRichard // Do not warn on naked functions.
nakedFunction(int a,int b)19*89a1d03eSRichard __attribute__((naked)) void nakedFunction(int a, int b) { ; }
20