1*cdd2c069SCongcong Cai // RUN: %check_clang_tidy -std=c++23 %s misc-unconventional-assign-operator %t 2*cdd2c069SCongcong Cai 3*cdd2c069SCongcong Cai struct BadArgument { 4*cdd2c069SCongcong Cai BadArgument &operator=(this BadArgument& self, BadArgument &); 5*cdd2c069SCongcong Cai // CHECK-MESSAGES: :[[@LINE-1]]:3: warning: operator=() should take 'BadArgument const&', 'BadArgument&&' or 'BadArgument' 6*cdd2c069SCongcong Cai }; 7*cdd2c069SCongcong Cai 8*cdd2c069SCongcong Cai struct GoodArgument { 9*cdd2c069SCongcong Cai GoodArgument &operator=(this GoodArgument& self, GoodArgument const &); 10*cdd2c069SCongcong Cai }; 11