189a1d03eSRichard // RUN: %check_clang_tidy %s fuchsia-default-arguments-calls %t 289a1d03eSRichard 389a1d03eSRichard int foo(int value = 5) { return value; } 489a1d03eSRichard 589a1d03eSRichard int f() { 689a1d03eSRichard foo(); 789a1d03eSRichard // CHECK-NOTES: [[@LINE-1]]:3: warning: calling a function that uses a default argument is disallowed [fuchsia-default-arguments-calls] 889a1d03eSRichard // CHECK-NOTES: [[@LINE-5]]:9: note: default parameter was declared here 989a1d03eSRichard } 1089a1d03eSRichard 1189a1d03eSRichard int bar(int value) { return value; } 1289a1d03eSRichard 1389a1d03eSRichard int n() { 1489a1d03eSRichard foo(0); 1589a1d03eSRichard bar(0); 1689a1d03eSRichard } 1789a1d03eSRichard 1889a1d03eSRichard void x(int i = 12); 1989a1d03eSRichard 2089a1d03eSRichard struct S { 2189a1d03eSRichard void x(int i); 2289a1d03eSRichard }; 2389a1d03eSRichard 2489a1d03eSRichard void S::x(int i = 12) {} 2589a1d03eSRichard 2689a1d03eSRichard int main() { 2789a1d03eSRichard S s; 2889a1d03eSRichard s.x(); 29*77a08a73Sykiko // CHECK-NOTES: [[@LINE-1]]:5: warning: calling a function that uses a default argument is disallowed [fuchsia-default-arguments-calls] 3089a1d03eSRichard // CHECK-NOTES: [[@LINE-6]]:11: note: default parameter was declared here 3189a1d03eSRichard // CHECK-NEXT: void S::x(int i = 12) {} 3289a1d03eSRichard x(); 3389a1d03eSRichard // CHECK-NOTES: [[@LINE-1]]:3: warning: calling a function that uses a default argument is disallowed [fuchsia-default-arguments-calls] 3489a1d03eSRichard // CHECK-NOTES: [[@LINE-16]]:8: note: default parameter was declared here 3589a1d03eSRichard // CHECK-NEXT: void x(int i = 12); 3689a1d03eSRichard } 37