| Jonathan Coe | 5d304b2 | 2016-07-30 08:58:54 +0000 | [diff] [blame] | 1 | // RUN: %check_clang_tidy %s cppcoreguidelines-special-member-functions %t -- -- -std=c++03 |
| 2 | |
| 3 | class DefinesDestructor { |
| 4 | ~DefinesDestructor(); |
| 5 | }; |
| Aaron Ballman | 9dd8caa | 2017-03-13 21:39:00 +0000 | [diff] [blame^] | 6 | // CHECK-MESSAGES: [[@LINE-3]]:7: warning: class 'DefinesDestructor' defines a non-default destructor but does not define a copy constructor or a copy assignment operator [cppcoreguidelines-special-member-functions] |
| Jonathan Coe | 5d304b2 | 2016-07-30 08:58:54 +0000 | [diff] [blame] | 7 | |
| 8 | class DefinesCopyConstructor { |
| 9 | DefinesCopyConstructor(const DefinesCopyConstructor &); |
| 10 | }; |
| 11 | // CHECK-MESSAGES: [[@LINE-3]]:7: warning: class 'DefinesCopyConstructor' defines a copy constructor but does not define a destructor or a copy assignment operator [cppcoreguidelines-special-member-functions] |
| 12 | |
| 13 | class DefinesCopyAssignment { |
| 14 | DefinesCopyAssignment &operator=(const DefinesCopyAssignment &); |
| 15 | }; |
| 16 | // CHECK-MESSAGES: [[@LINE-3]]:7: warning: class 'DefinesCopyAssignment' defines a copy assignment operator but does not define a destructor or a copy constructor [cppcoreguidelines-special-member-functions] |
| 17 | |
| 18 | class DefinesNothing { |
| 19 | }; |
| 20 | |
| 21 | class DefinesEverything { |
| 22 | DefinesEverything(const DefinesEverything &); |
| 23 | DefinesEverything &operator=(const DefinesEverything &); |
| 24 | ~DefinesEverything(); |
| 25 | }; |
| 26 | |