brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.9 KiB · 1fe7041 Raw
58 lines · cpp
1// RUN: %check_clang_tidy %s fuchsia-default-arguments-declarations %t2 3int foo(int value = 5) { return value; }4// CHECK-NOTES: [[@LINE-1]]:9: warning: declaring a parameter with a default argument is disallowed [fuchsia-default-arguments-declarations]5// CHECK-FIXES: int foo(int value) { return value; }6 7int bar(int value) { return value; }8 9class Baz {10public:11  int a(int value = 5) { return value; }12  // CHECK-NOTES: [[@LINE-1]]:9: warning: declaring a parameter with a default argument is disallowed [fuchsia-default-arguments-declarations]13  // CHECK-FIXES: int a(int value) { return value; }14 15  int b(int value) { return value; }16};17 18class Foo {19  // Fix should be suggested in declaration20  int a(int value = 53);21  // CHECK-NOTES: [[@LINE-1]]:9: warning: declaring a parameter with a default argument is disallowed [fuchsia-default-arguments-declarations]22  // CHECK-FIXES: int a(int value);23};24 25// Fix shouldn't be suggested in implementation26int Foo::a(int value) {27  return value;28}29 30// Elided functions31void f(int = 5) {};32// CHECK-NOTES: [[@LINE-1]]:8: warning: declaring a parameter with a default argument is disallowed [fuchsia-default-arguments-declarations]33// CHECK-FIXES: void f(int) {};34 35void g(int) {};36 37// Should not suggest fix for macro-defined parameters38#define D(val) = val39 40void h(int i D(5));41// CHECK-NOTES: [[@LINE-1]]:8: warning: declaring a parameter with a default argument is disallowed [fuchsia-default-arguments-declarations]42// CHECK-FIXES-NOT: void h(int i);43 44void x(int i);45void x(int i = 12);46// CHECK-NOTES: [[@LINE-1]]:8: warning: declaring a parameter with a default argument is disallowed [fuchsia-default-arguments-declarations]47// CHECK-FIXES: void x(int i);48 49void x(int i) {}50 51struct S {52  void x(int i);53};54 55void S::x(int i = 12) {}56// CHECK-NOTES: [[@LINE-1]]:11: warning: declaring a parameter with a default argument is disallowed [fuchsia-default-arguments-declarations]57// CHECK-FIXES: void S::x(int i) {}58