[clang] Implement lifetime analysis for lifetime_capture_by(X) (#115921)
[llvm-project.git] / clang / test / InstallAPI / umbrella-headers.test
blobce9c50608c41194b648a29f1f987dfe28f6b9134
1 ; RUN: rm -rf %t
2 ; RUN: split-file %s %t
3 ; RUN: sed -e "s|DSTROOT|%/t|g" %t/inputs.json.in > %t/inputs.json
4 ; RUN: cp -r %S/Inputs/Umbrella/Umbrella.framework %t/Frameworks/
6 // Check base filename matches.
7 ; RUN: clang-installapi --target=arm64-apple-macosx13 \
8 ; RUN: -install_name /System/Library/Frameworks/Umbrella.framework/Versions/A/Umbrella \
9 ; RUN: -ObjC -F%t/Frameworks/ %t/inputs.json \
10 ; RUN: --public-umbrella-header=SpecialUmbrella.h \
11 ; RUN: --private-umbrella-header=SpecialPrivateUmbrella.h \
12 ; RUN: -o %t/output.tbd 2>&1 | FileCheck -allow-empty %s
14 // Try missing umbrella header argument.
15 ; RUN: not clang-installapi --target=arm64-apple-macosx13 \
16 ; RUN: -install_name /System/Library/Frameworks/Umbrella.framework/Versions/A/Umbrella \
17 ; RUN: -ObjC -F%t/Frameworks/ %t/inputs.json \
18 ; RUN: --public-umbrella-header=Ignore.h \
19 ; RUN: -o %t/output.tbd 2>&1 | FileCheck %s -check-prefix=ERR
21 ; ERR: error: public umbrella header file not found in input: 'Ignore.h'
23 ; CHECK-NOT: error
24 ; CHECK-NOT: warning
26 ;--- Frameworks/Umbrella.framework/Headers/Ignore.h
27 #error "This header should be ignored"
29 ;--- inputs.json.in
31   "headers": [ {
32     "path" : "DSTROOT/Frameworks/Umbrella.framework/Headers/AAA.h",
33     "type" : "public"
34   }, 
35   {
36     "path" : "DSTROOT/Frameworks/Umbrella.framework/Headers/SpecialUmbrella.h",
37     "type" : "public"
38   },
39   {
40     "path" : "DSTROOT/Frameworks/Umbrella.framework/PrivateHeaders/AAA_Private.h",
41     "type" : "private"
42   },
43   {
44     "path" : "DSTROOT/Frameworks/Umbrella.framework/PrivateHeaders/SpecialPrivateUmbrella.h",
45     "type" : "private"
46   }],
47   "version": "3"