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