xref: /llvm-project/clang/test/SemaObjCXX/block-for-lambda-conversion.mm (revision 8abc2e51b81efe2f540f6a61a3028f8fe72fe478)
1*8abc2e51SManman Ren// RUN: %clang_cc1 -fsyntax-only -fblocks -verify -std=c++11 %s
2*8abc2e51SManman Ren
3*8abc2e51SManman Renenum NSEventType {
4*8abc2e51SManman Ren  NSEventTypeFlagsChanged = 12
5*8abc2e51SManman Ren};
6*8abc2e51SManman Ren
7*8abc2e51SManman Renenum NSEventMask {
8*8abc2e51SManman Ren  NSEventMaskLeftMouseDown = 1
9*8abc2e51SManman Ren};
10*8abc2e51SManman Ren
11*8abc2e51SManman Renstatic const NSEventType NSFlagsChanged = NSEventTypeFlagsChanged;
12*8abc2e51SManman Ren
13*8abc2e51SManman Ren@interface NSObject
14*8abc2e51SManman Ren@end
15*8abc2e51SManman Ren@interface NSEvent : NSObject {
16*8abc2e51SManman Ren}
17*8abc2e51SManman Ren+ (nullable id)
18*8abc2e51SManman RenaddMonitor:(NSEventMask)mask handler:(NSEvent *_Nullable (^)(NSEvent *))block;
19*8abc2e51SManman Ren@end
20*8abc2e51SManman Ren
21*8abc2e51SManman Renvoid test(id weakThis) {
22*8abc2e51SManman Ren  id m_flagsChangedEventMonitor = [NSEvent
23*8abc2e51SManman Ren      addMonitor:NSFlagsChangedMask //expected-error {{use of undeclared identifier 'NSFlagsChangedMask'}}
24*8abc2e51SManman Ren         handler:[weakThis](NSEvent *flagsChangedEvent) {
25*8abc2e51SManman Ren             return flagsChangedEvent;
26*8abc2e51SManman Ren         }];
27*8abc2e51SManman Ren}
28