1 | // RUN: rm -rf %t |
2 | // RUN: mkdir %t |
3 | // RUN: cp %S/Inputs/unnecessary-value-param/header.h %t/header.h |
4 | // RUN: %check_clang_tidy %s performance-unnecessary-value-param %t/temp -- -- -I %t |
5 | // RUN: diff %t/header.h %S/Inputs/unnecessary-value-param/header-fixed.h |
6 | |
7 | #include "header.h" |
8 | |
9 | |
10 | |
11 | int f1(int n, ABC v1, ABC v2) { |
12 | // CHECK-MESSAGES: [[@LINE-1]]:19: warning: the parameter 'v1' is copied for each invocation but only used as a const reference; consider making it a const reference [performance-unnecessary-value-param] |
13 | // CHECK-MESSAGES: [[@LINE-2]]:27: warning: the parameter 'v2' is copied for each invocation but only used as a const reference; consider making it a const reference [performance-unnecessary-value-param] |
14 | // CHECK-FIXES: int f1(int n, const ABC& v1, const ABC& v2) { |
15 | return v1.get(n) + v2.get(n); |
16 | } |
17 | int f2(int n, ABC v2) { |
18 | // CHECK-MESSAGES: [[@LINE-1]]:19: warning: the parameter 'v2' is copied for each invocation but only used as a const reference; consider making it a const reference [performance-unnecessary-value-param] |
19 | // CHECK-FIXES: int f2(int n, const ABC& v2) { |
20 | } |
21 | |