llvm-project/clang/test/SemaObjCXX/cxxoperator-selector.mm
Akira Hatanaka 7460056a81
[ObjC] Stop hard-coding the list of keywords that are allowed in selectors (#138952)
The design intent is that ObjC selector pieces can be arbitrary
keywords, including basic C keywords like `if`, and the grammar permits
this and makes it unambiguous.

Allow any token that has an identifier (except `__attribute__`) to be
part of a selector.

rdar://150383689
2025-05-13 16:25:21 -07:00

29 lines
626 B
Plaintext

// RUN: %clang_cc1 -fsyntax-only -verify -Wno-objc-root-class %s
@class NSDate;
@interface XSGraphDataSet
- and;
- xor;
- or;
- ||; // expected-error {{expected selector for Objective-C method}}
- &&; // expected-error {{expected selector for Objective-C method}}
- (void)dataSetForValuesBetween:(NSDate *)startDate and:(NSDate *)endDate;
@end
@implementation XSGraphDataSet
- (id) and{return 0; };
- (id) xor{return 0; };
- (id) or{return 0; };
- (void)decltype {}
- (void)constexpr {}
- (void)noexcept {}
- (void)nullptr {}
- (void)dataSetForValuesBetween:(NSDate *)startDate and:(NSDate *)endDate { return; }
@end