The following fragments passes the analyser, but fails in C compilation.
module test;
type Kind enum u8 {
A, B, C
}
fn bool Kind.isA(Kind k) {
return k == A;
}
public fn i32 main() {
Kind k = A;
bool is_a = !k.isA; // forget ()
// Note bool is_a = k.isA; does give a c2c error
return 0;
}