[clang-cl] Ignore /Wv and /Wv:17 flags
[llvm-project.git] / clang / test / CodeGenObjC / debug-info-nodebug.m
blob42d630b4ac1d82476e6cfd9dbfcb8890c95483ed
1 // RUN: %clang_cc1 -triple arm-apple-ios -emit-llvm -debug-info-kind=limited -fblocks  %s -o - | FileCheck %s
2 // Objective-C code cargo-culted from debug-info-lifetime-crash.m.
3 @protocol NSObject
4 - (id)copy;
5 @end
6 @class W;
7 @interface View1
8 @end
9 @implementation Controller {
10     void (^Block)(void);
12 - (void)View:(View1 *)View foo:(W *)W
14   // The reference from inside the block implicitly creates another
15   // local variable for the referenced member. That is what gets
16   // suppressed by the attribute.  It still gets debug info as a
17   // member, though.
18   // CHECK-NOT: !DILocalVariable(name: "weakSelf"
19   // CHECK:     !DIDerivedType({{.*}} name: "weakSelf"
20   // CHECK-NOT: !DILocalVariable(name: "weakSelf"
21   __attribute__((nodebug)) __typeof(self) weakSelf = self;
22   Block = [^{
23     __typeof(self) strongSelf = weakSelf;
24     } copy];
26 @end