mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-25 11:15:34 +00:00
399276d5fc
This is the counterpart to the existing analysis to catch constructors which aren't marked as either explicit or MOZ_IMPLICIT.
12 lines
332 B
C++
12 lines
332 B
C++
#define MOZ_IMPLICIT __attribute__((annotate("moz_implicit")))
|
|
|
|
struct Bad {
|
|
operator bool(); // expected-error {{bad implicit conversion operator for 'Bad'}} expected-note {{consider adding the explicit keyword to 'operator bool'}}
|
|
};
|
|
struct Good {
|
|
explicit operator bool();
|
|
};
|
|
struct Okay {
|
|
MOZ_IMPLICIT operator bool();
|
|
};
|