aboutsummaryrefslogtreecommitdiffstats
path: root/tests/function-args-by-ref/warn-for-overridden-methods.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/function-args-by-ref/warn-for-overridden-methods.cpp')
-rw-r--r--tests/function-args-by-ref/warn-for-overridden-methods.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/tests/function-args-by-ref/warn-for-overridden-methods.cpp b/tests/function-args-by-ref/warn-for-overridden-methods.cpp
new file mode 100644
index 00000000..f4a7ee37
--- /dev/null
+++ b/tests/function-args-by-ref/warn-for-overridden-methods.cpp
@@ -0,0 +1,22 @@
+struct NonTrivial {
+ NonTrivial() {}
+ NonTrivial(const NonTrivial &) {}
+ void constFunction() const {};
+ void nonConstFunction() {};
+ int a;
+};
+
+class BaseWithVirtuals
+{
+public:
+ virtual void virtualMethod1(NonTrivial) {}; // Warn
+ virtual void virtualMethod2(NonTrivial) {}; // Warn
+ void nonVirtualMethod(NonTrivial) {}; // Warn
+};
+
+class DerivedWithVirtuals : BaseWithVirtuals {
+public:
+ void virtualMethod1(NonTrivial) override {}; // Warn
+ void virtualMethod2(NonTrivial) {}; // Warn
+ void nonVirtualMethod(NonTrivial) {}; // Warn
+};