diff options
Diffstat (limited to 'test/SemaObjCXX/sel-address.mm')
-rw-r--r-- | test/SemaObjCXX/sel-address.mm | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/test/SemaObjCXX/sel-address.mm b/test/SemaObjCXX/sel-address.mm new file mode 100644 index 000000000000..a1209abd4e68 --- /dev/null +++ b/test/SemaObjCXX/sel-address.mm @@ -0,0 +1,19 @@ +// RUN: %clang_cc1 -fsyntax-only -verify %s +// pr7390 + +void f(const SEL& v2) {} +void g(SEL* _Nonnull); +void h() { + f(@selector(dealloc)); + + SEL s = @selector(dealloc); + SEL* ps = &s; + + @selector(dealloc) = s; // expected-error {{expression is not assignable}} + + SEL* ps2 = &@selector(dealloc); + + // Shouldn't crash. + g(&@selector(foo)); +} + |