summaryrefslogtreecommitdiffstats
path: root/tools/clang-tidy/test/bugprone-swapped-arguments.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tools/clang-tidy/test/bugprone-swapped-arguments.cpp')
-rw-r--r--tools/clang-tidy/test/bugprone-swapped-arguments.cpp26
1 files changed, 26 insertions, 0 deletions
diff --git a/tools/clang-tidy/test/bugprone-swapped-arguments.cpp b/tools/clang-tidy/test/bugprone-swapped-arguments.cpp
new file mode 100644
index 0000000000..074df52050
--- /dev/null
+++ b/tools/clang-tidy/test/bugprone-swapped-arguments.cpp
@@ -0,0 +1,26 @@
+// https://clang.llvm.org/extra/clang-tidy/checks/bugprone-swapped-arguments.html
+
+void test_d_i(double d, int i);
+void test_d_i_i(double d, int i, int ii);
+void test_i_d(int i, double d);
+void test_i_i_d(int i, int ii, double d);
+
+void test()
+{
+ double d = 1;
+ int i = 1;
+
+ test_d_i(d, i); // OK
+ test_d_i(i, d); // WARNING
+
+ test_i_d(i, d); // OK
+ test_i_d(d, i); // WARNING
+
+ test_i_i_d(i, i, d); // OK
+ test_i_i_d(i, d, i); // WARNING
+ test_i_i_d(d, i, i); // NO WARNING after second parameter
+
+ test_d_i_i(d, i, i); // OK
+ test_d_i_i(i, d, i); // WARNING
+ test_d_i_i(i, i, d); // NO WARNING after second parameter
+}