[RISCV][FMV] Support target_clones (#85786)
[llvm-project.git] / clang / test / InstallAPI / diagnostics-zippered.test
blob59fd0bb673a3da53dd449ff0e028b7ac2d43db75
1 ; RUN: rm -rf %t
2 ; RUN: split-file %s %t
3 ; RUN: cp -r %S/Inputs/Foundation/Foundation.framework %t/System/Library/Frameworks/
4 ; RUN: sed -e "s|DSTROOT|%/t|g" %t/inputs.json.in > %t/inputs.json
5 ; RUN: yaml2obj %t/Mismatch.yaml -o %t/System/Library/Frameworks/Mismatch.framework/Mismatch
7 ; RUN: not clang-installapi --target=arm64-apple-macos13 \
8 ; RUN: --target=x86_64-apple-macos13 -darwin-target-variant x86_64-apple-ios16.0-macabi \
9 ; RUN: -darwin-target-variant arm64-apple-ios16.0-macabi \
10 ; RUN: -F %t/System/Library/Frameworks -isysroot %S/Inputs/MacOSX13.0.sdk \
11 ; RUN: -install_name /System/Library/Frameworks/Mismatch.framework/Versions/A/Mismatch \
12 ; RUN: -current_version 1 -compatibility_version 1 %t/inputs.json -o %t/Mismatch.tbd \
13 ; RUN: --verify-against=%t/System/Library/Frameworks/Mismatch.framework/Mismatch \
14 ; RUN: --verify-mode=Pedantic 2>&1 | FileCheck %s 
16 ; CHECK:      warning: violations found for x86_64-apple-macos13
17 ; CHECK:      error: declaration has external linkage, but dynamic library doesn't have symbol 'foo_arch_x86'
18 ; CHECK-NEXT: extern int foo_arch_x86();
20 ; CHECK:      error: symbol exported in dynamic library, but marked hidden in declaration 'baz'
21 ; CHECK-NEXT: int baz() __attribute__((visibility("hidden")));
23 ; CHECK-NOT:  inlinedFunc
25 ; CHECK:      error: declaration has external linkage, but symbol has internal linkage in dynamic library 'bar'
26 ; CHECK-NEXT: extern int bar();
28 ; CHECK:      error: declaration has external linkage, but dynamic library doesn't have symbol 'NSFoo'
29 ; CHECK-NEXT: @interface NSFoo
31 ; CHECK:      error: declaration has external linkage, but dynamic library doesn't have symbol 'NSFoo.nsint'
32 ; CHECK-NEXT: int nsint;
34 ; CHECK:      error: declaration has external linkage, but dynamic library doesn't have symbol 'NSFooExcept'
35 ; CHECK-NEXT: @interface NSFooExcept
37 ; CHECK:      warning: violations found for arm64-apple-macos13
38 ; CHECK:      error: declaration has external linkage, but dynamic library doesn't have symbol 'foo_arch_arm'
39 ; CHECK-NEXT: extern int foo_arch_arm();
41 ; CHECK:      warning: violations found for x86_64 
42 ; CHECK-NEXT: error: no declaration found for exported symbol '_fooBar' in dynamic library
44 ; CHECK:      warning: violations found for arm64 
45 ; CHECK-NEXT: error: no declaration found for exported symbol '_fooBar' in dynamic library
46 ; CHECK:      warning: violations found for arm64-apple-macos13
47 ; CHECK-NEXT: error: declaration 'unavailableSymbol' is marked unavailable, but symbol is exported in dynamic library
48 ; CHECK-NEXT: extern int unavailableSymbol
49 ; CHECK:      warning: violations found for arm64-apple-ios16.0-macabi
50 ; CHECK-NEXT: error: declaration 'unavailableSymbol' is marked unavailable, but symbol is exported in dynamic library
51 ; CHECK-NEXT: extern int unavailableSymbol
54 ;--- System/Library/Frameworks/Mismatch.framework/Headers/Mismatch.h
55 #if defined(__x86_64__)
56 extern int foo_arch_x86();
57 #else
58 extern int foo_arch_arm();
59 #endif
61 int foo();
62 int baz() __attribute__((visibility("hidden")));
64 __attribute__((visibility("hidden"))) inline int inlinedFunc() { return 1; }
66 ;--- System/Library/Frameworks/Mismatch.framework/PrivateHeaders/Mismatch_Private.h
67 #include <Foundation/Foundation.h>
68 extern int bar();
70 @interface NSFoo : NSObject {
71   int nsint;
73 @end
75 __attribute__((objc_exception))
76 @interface NSFooExcept : NSObject
77 @end
79 extern int unavailableSymbol __attribute__((
80     availability(macosx, unavailable), availability(macCatalyst, unavailable)));
83 // Generated from source:
84 // *** 
85 //     int inlinedFunc() { return 1; }
86 //     int foo() { return 1; }
87 //     __attribute__((visibility("hidden"))) int bar() { return 1; }
88 //     int baz() { return 1; }
89 //     int fooBar = 1;
90 //     int unavailableSymbol = 1;
91 // *** 
92 // xcrun -sdk macosx clang -target x86_64-apple-macos13 --target-variant=x86_64-apple-ios16-macabi -dynamiclib
93 // xcrun -sdk macosx clang -target arm64-apple-macos13 --target-variant=arm64-apple-ios16-macabi -dynamiclib
94 // then lipo'ed together. 
96 ;--- Mismatch.yaml
97 --- !fat-mach-o
98 FatHeader:
99   magic:           0xCAFEBABE
100   nfat_arch:       2
101 FatArchs:
102   - cputype:         0x1000007
103     cpusubtype:      0x3
104     offset:          0x1000
105     size:            20768
106     align:           12
107   - cputype:         0x100000C
108     cpusubtype:      0x0
109     offset:          0x8000
110     size:            49984
111     align:           14
112 Slices:
113   - !mach-o
114     FileHeader:
115       magic:           0xFEEDFACF
116       cputype:         0x1000007
117       cpusubtype:      0x3
118       filetype:        0x6
119       ncmds:           15
120       sizeofcmds:      1584
121       flags:           0x100085
122       reserved:        0x0
123     LoadCommands:
124       - cmd:             LC_SEGMENT_64
125         cmdsize:         312
126         segname:         __TEXT
127         vmaddr:          0
128         vmsize:          12288
129         fileoff:         0
130         filesize:        12288
131         maxprot:         5
132         initprot:        5
133         nsects:          3
134         flags:           0
135         Sections:
136           - sectname:        __text
137             segname:         __TEXT
138             addr:            0x1090
139             size:            59
140             offset:          0x1090
141             align:           4
142             reloff:          0x0
143             nreloc:          0
144             flags:           0x80000400
145             reserved1:       0x0
146             reserved2:       0x0
147             reserved3:       0x0
148             content:         554889E5B8010000005DC30F1F440000554889E5B8010000005DC30F1F440000554889E5B8010000005DC30F1F440000554889E5B8010000005DC3
149           - sectname:        __unwind_info
150             segname:         __TEXT
151             addr:            0x10CC
152             size:            4152
153             offset:          0x10CC
154             align:           2
155             reloff:          0x0
156             nreloc:          0
157             flags:           0x0
158             reserved1:       0x0
159             reserved2:       0x0
160             reserved3:       0x0
161             content:         010000001C000000010000002000000000000000200000000200000000000001901000003800000038000000CB1000000000000038000000030000000C0001001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
162           - sectname:        __eh_frame
163             segname:         __TEXT
164             addr:            0x2108
165             size:            24
166             offset:          0x2108
167             align:           3
168             reloff:          0x0
169             nreloc:          0
170             flags:           0x6000000B
171             reserved1:       0x0
172             reserved2:       0x0
173             reserved3:       0x0
174             content:         1400000000000000017A520001781001100C070890010000
175       - cmd:             LC_SEGMENT_64
176         cmdsize:         152
177         segname:         __DATA_CONST
178         vmaddr:          12288
179         vmsize:          4096
180         fileoff:         12288
181         filesize:        4096
182         maxprot:         3
183         initprot:        3
184         nsects:          1
185         flags:           16
186         Sections:
187           - sectname:        __objc_imageinfo
188             segname:         __DATA_CONST
189             addr:            0x3000
190             size:            8
191             offset:          0x3000
192             align:           0
193             reloff:          0x0
194             nreloc:          0
195             flags:           0x0
196             reserved1:       0x0
197             reserved2:       0x0
198             reserved3:       0x0
199             content:         '0000000040000000'
200       - cmd:             LC_SEGMENT_64
201         cmdsize:         152
202         segname:         __DATA
203         vmaddr:          16384
204         vmsize:          4096
205         fileoff:         16384
206         filesize:        4096
207         maxprot:         3
208         initprot:        3
209         nsects:          1
210         flags:           0
211         Sections:
212           - sectname:        __data
213             segname:         __DATA
214             addr:            0x4000
215             size:            8
216             offset:          0x4000
217             align:           2
218             reloff:          0x0
219             nreloc:          0
220             flags:           0x0
221             reserved1:       0x0
222             reserved2:       0x0
223             reserved3:       0x0
224             content:         '0100000001000000'
225       - cmd:             LC_SEGMENT_64
226         cmdsize:         72
227         segname:         __LINKEDIT
228         vmaddr:          20480
229         vmsize:          288
230         fileoff:         20480
231         filesize:        288
232         maxprot:         1
233         initprot:        1
234         nsects:          0
235         flags:           0
236       - cmd:             LC_DYLD_INFO_ONLY
237         cmdsize:         48
238         rebase_off:      0
239         rebase_size:     0
240         bind_off:        0
241         bind_size:       0
242         weak_bind_off:   0
243         weak_bind_size:  0
244         lazy_bind_off:   0
245         lazy_bind_size:  0
246         export_off:      20480
247         export_size:     88
248       - cmd:             LC_SYMTAB
249         cmdsize:         24
250         symoff:          20576
251         nsyms:           7
252         stroff:          20688
253         strsize:         80
254       - cmd:             LC_DYSYMTAB
255         cmdsize:         80
256         ilocalsym:       0
257         nlocalsym:       1
258         iextdefsym:      1
259         nextdefsym:      5
260         iundefsym:       6
261         nundefsym:       1
262         tocoff:          0
263         ntoc:            0
264         modtaboff:       0
265         nmodtab:         0
266         extrefsymoff:    0
267         nextrefsyms:     0
268         indirectsymoff:  0
269         nindirectsyms:   0
270         extreloff:       0
271         nextrel:         0
272         locreloff:       0
273         nlocrel:         0
274       - cmd:             LC_ID_DYLIB
275         cmdsize:         96
276         dylib:
277           name:            24
278           timestamp:       0
279           current_version: 65536
280           compatibility_version: 65536
281         Content:         '/System/Library/Frameworks/Mismatch.framework/Versions/A/Mismatch'
282         ZeroPadBytes:    7
283       - cmd:             LC_UUID
284         cmdsize:         24
285         uuid:            4C4C4421-5555-3144-A16C-E4AA63D66775
286       - cmd:             LC_BUILD_VERSION
287         cmdsize:         32
288         platform:        1
289         minos:           851968
290         sdk:             983040
291         ntools:          1
292         Tools:
293           - tool:            4
294             version:         1245184
295       - cmd:             LC_BUILD_VERSION
296         cmdsize:         32
297         platform:        6
298         minos:           1048576
299         sdk:             1048576
300         ntools:          1
301         Tools:
302           - tool:            4
303             version:         1245184
304       - cmd:             LC_LOAD_DYLIB
305         cmdsize:         56
306         dylib:
307           name:            24
308           timestamp:       0
309           current_version: 14942208
310           compatibility_version: 65536
311         Content:         '/usr/lib/libobjc.A.dylib'
312         ZeroPadBytes:    8
313       - cmd:             LC_LOAD_DYLIB
314         cmdsize:         56
315         dylib:
316           name:            24
317           timestamp:       0
318           current_version: 88539136
319           compatibility_version: 65536
320         Content:         '/usr/lib/libSystem.B.dylib'
321         ZeroPadBytes:    6
322       - cmd:             LC_FUNCTION_STARTS
323         cmdsize:         16
324         dataoff:         20568
325         datasize:        8
326       - cmd:             LC_DATA_IN_CODE
327         cmdsize:         16
328         dataoff:         20576
329         datasize:        0
330     LinkEditData:
331       ExportTrie:
332         TerminalSize:    0
333         NodeOffset:      0
334         Name:            ''
335         Flags:           0x0
336         Address:         0x0
337         Other:           0x0
338         ImportName:      ''
339         Children:
340           - TerminalSize:    0
341             NodeOffset:      5
342             Name:            _
343             Flags:           0x0
344             Address:         0x0
345             Other:           0x0
346             ImportName:      ''
347             Children:
348               - TerminalSize:    3
349                 NodeOffset:      49
350                 Name:            inlinedFunc
351                 Flags:           0x0
352                 Address:         0x1090
353                 Other:           0x0
354                 ImportName:      ''
355               - TerminalSize:    3
356                 NodeOffset:      54
357                 Name:            foo
358                 Flags:           0x0
359                 Address:         0x10A0
360                 Other:           0x0
361                 ImportName:      ''
362                 Children:
363                   - TerminalSize:    4
364                     NodeOffset:      64
365                     Name:            Bar
366                     Flags:           0x0
367                     Address:         0x4000
368                     Other:           0x0
369                     ImportName:      ''
370               - TerminalSize:    4
371                 NodeOffset:      70
372                 Name:            unavailableSymbol
373                 Flags:           0x0
374                 Address:         0x4004
375                 Other:           0x0
376                 ImportName:      ''
377               - TerminalSize:    3
378                 NodeOffset:      76
379                 Name:            baz
380                 Flags:           0x0
381                 Address:         0x10C0
382                 Other:           0x0
383                 ImportName:      ''
384       NameList:
385         - n_strx:          20
386           n_type:          0x1E
387           n_sect:          1
388           n_desc:          0
389           n_value:         4272
390         - n_strx:          2
391           n_type:          0xF
392           n_sect:          1
393           n_desc:          0
394           n_value:         4240
395         - n_strx:          15
396           n_type:          0xF
397           n_sect:          1
398           n_desc:          0
399           n_value:         4256
400         - n_strx:          25
401           n_type:          0xF
402           n_sect:          1
403           n_desc:          0
404           n_value:         4288
405         - n_strx:          30
406           n_type:          0xF
407           n_sect:          5
408           n_desc:          0
409           n_value:         16384
410         - n_strx:          38
411           n_type:          0xF
412           n_sect:          5
413           n_desc:          0
414           n_value:         16388
415         - n_strx:          57
416           n_type:          0x1
417           n_sect:          0
418           n_desc:          512
419           n_value:         0
420       StringTable:
421         - ' '
422         - _inlinedFunc
423         - _foo
424         - _bar
425         - _baz
426         - _fooBar
427         - _unavailableSymbol
428         - dyld_stub_binder
429         - ''
430         - ''
431         - ''
432         - ''
433         - ''
434         - ''
435       FunctionStarts:  [ 0x1090, 0x10A0, 0x10B0, 0x10C0 ]
436   - !mach-o
437     FileHeader:
438       magic:           0xFEEDFACF
439       cputype:         0x100000C
440       cpusubtype:      0x0
441       filetype:        0x6
442       ncmds:           16
443       sizeofcmds:      1104
444       flags:           0x100085
445       reserved:        0x0
446     LoadCommands:
447       - cmd:             LC_SEGMENT_64
448         cmdsize:         232
449         segname:         __TEXT
450         vmaddr:          0
451         vmsize:          16384
452         fileoff:         0
453         filesize:        16384
454         maxprot:         5
455         initprot:        5
456         nsects:          2
457         flags:           0
458         Sections:
459           - sectname:        __text
460             segname:         __TEXT
461             addr:            0x1050
462             size:            32
463             offset:          0x1050
464             align:           2
465             reloff:          0x0
466             nreloc:          0
467             flags:           0x80000400
468             reserved1:       0x0
469             reserved2:       0x0
470             reserved3:       0x0
471             content:         20008052C0035FD620008052C0035FD620008052C0035FD620008052C0035FD6
472           - sectname:        __unwind_info
473             segname:         __TEXT
474             addr:            0x1070
475             size:            4152
476             offset:          0x1070
477             align:           2
478             reloff:          0x0
479             nreloc:          0
480             flags:           0x0
481             reserved1:       0x0
482             reserved2:       0x0
483             reserved3:       0x0
484             content:         010000001C000000010000002000000000000000200000000200000000000002501000003800000038000000701000000000000038000000030000000C0001001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
485       - cmd:             LC_SEGMENT_64
486         cmdsize:         152
487         segname:         __DATA_CONST
488         vmaddr:          16384
489         vmsize:          16384
490         fileoff:         16384
491         filesize:        16384
492         maxprot:         3
493         initprot:        3
494         nsects:          1
495         flags:           16
496         Sections:
497           - sectname:        __objc_imageinfo
498             segname:         __DATA_CONST
499             addr:            0x4000
500             size:            8
501             offset:          0x4000
502             align:           0
503             reloff:          0x0
504             nreloc:          0
505             flags:           0x0
506             reserved1:       0x0
507             reserved2:       0x0
508             reserved3:       0x0
509             content:         '0000000040000000'
510       - cmd:             LC_SEGMENT_64
511         cmdsize:         152
512         segname:         __DATA
513         vmaddr:          32768
514         vmsize:          16384
515         fileoff:         32768
516         filesize:        16384
517         maxprot:         3
518         initprot:        3
519         nsects:          1
520         flags:           0
521         Sections:
522           - sectname:        __data
523             segname:         __DATA
524             addr:            0x8000
525             size:            8
526             offset:          0x8000
527             align:           2
528             reloff:          0x0
529             nreloc:          0
530             flags:           0x0
531             reserved1:       0x0
532             reserved2:       0x0
533             reserved3:       0x0
534             content:         '0100000001000000'
535       - cmd:             LC_SEGMENT_64
536         cmdsize:         72
537         segname:         __LINKEDIT
538         vmaddr:          49152
539         vmsize:          832
540         fileoff:         49152
541         filesize:        832
542         maxprot:         1
543         initprot:        1
544         nsects:          0
545         flags:           0
546       - cmd:             LC_DYLD_INFO_ONLY
547         cmdsize:         48
548         rebase_off:      0
549         rebase_size:     0
550         bind_off:        0
551         bind_size:       0
552         weak_bind_off:   0
553         weak_bind_size:  0
554         lazy_bind_off:   0
555         lazy_bind_size:  0
556         export_off:      49152
557         export_size:     88
558       - cmd:             LC_SYMTAB
559         cmdsize:         24
560         symoff:          49248
561         nsyms:           7
562         stroff:          49360
563         strsize:         80
564       - cmd:             LC_DYSYMTAB
565         cmdsize:         80
566         ilocalsym:       0
567         nlocalsym:       1
568         iextdefsym:      1
569         nextdefsym:      5
570         iundefsym:       6
571         nundefsym:       1
572         tocoff:          0
573         ntoc:            0
574         modtaboff:       0
575         nmodtab:         0
576         extrefsymoff:    0
577         nextrefsyms:     0
578         indirectsymoff:  0
579         nindirectsyms:   0
580         extreloff:       0
581         nextrel:         0
582         locreloff:       0
583         nlocrel:         0
584       - cmd:             LC_ID_DYLIB
585         cmdsize:         96
586         dylib:
587           name:            24
588           timestamp:       0
589           current_version: 65536
590           compatibility_version: 65536
591         Content:         '/System/Library/Frameworks/Mismatch.framework/Versions/A/Mismatch'
592         ZeroPadBytes:    7
593       - cmd:             LC_UUID
594         cmdsize:         24
595         uuid:            4C4C4428-5555-3144-A12B-7130A3C946D2
596       - cmd:             LC_BUILD_VERSION
597         cmdsize:         32
598         platform:        1
599         minos:           851968
600         sdk:             983040
601         ntools:          1
602         Tools:
603           - tool:            4
604             version:         1245184
605       - cmd:             LC_BUILD_VERSION
606         cmdsize:         32
607         platform:        6
608         minos:           1048576
609         sdk:             1048576
610         ntools:          1
611         Tools:
612           - tool:            4
613             version:         1245184
614       - cmd:             LC_LOAD_DYLIB
615         cmdsize:         56
616         dylib:
617           name:            24
618           timestamp:       0
619           current_version: 14942208
620           compatibility_version: 65536
621         Content:         '/usr/lib/libobjc.A.dylib'
622         ZeroPadBytes:    8
623       - cmd:             LC_LOAD_DYLIB
624         cmdsize:         56
625         dylib:
626           name:            24
627           timestamp:       0
628           current_version: 88539136
629           compatibility_version: 65536
630         Content:         '/usr/lib/libSystem.B.dylib'
631         ZeroPadBytes:    6
632       - cmd:             LC_FUNCTION_STARTS
633         cmdsize:         16
634         dataoff:         49240
635         datasize:        8
636       - cmd:             LC_DATA_IN_CODE
637         cmdsize:         16
638         dataoff:         49248
639         datasize:        0
640       - cmd:             LC_CODE_SIGNATURE
641         cmdsize:         16
642         dataoff:         49440
643         datasize:        544
644     LinkEditData:
645       ExportTrie:
646         TerminalSize:    0
647         NodeOffset:      0
648         Name:            ''
649         Flags:           0x0
650         Address:         0x0
651         Other:           0x0
652         ImportName:      ''
653         Children:
654           - TerminalSize:    0
655             NodeOffset:      5
656             Name:            _
657             Flags:           0x0
658             Address:         0x0
659             Other:           0x0
660             ImportName:      ''
661             Children:
662               - TerminalSize:    3
663                 NodeOffset:      49
664                 Name:            inlinedFunc
665                 Flags:           0x0
666                 Address:         0x1050
667                 Other:           0x0
668                 ImportName:      ''
669               - TerminalSize:    3
670                 NodeOffset:      54
671                 Name:            foo
672                 Flags:           0x0
673                 Address:         0x1058
674                 Other:           0x0
675                 ImportName:      ''
676                 Children:
677                   - TerminalSize:    4
678                     NodeOffset:      64
679                     Name:            Bar
680                     Flags:           0x0
681                     Address:         0x8000
682                     Other:           0x0
683                     ImportName:      ''
684               - TerminalSize:    4
685                 NodeOffset:      70
686                 Name:            unavailableSymbol
687                 Flags:           0x0
688                 Address:         0x8004
689                 Other:           0x0
690                 ImportName:      ''
691               - TerminalSize:    3
692                 NodeOffset:      76
693                 Name:            baz
694                 Flags:           0x0
695                 Address:         0x1068
696                 Other:           0x0
697                 ImportName:      ''
698       NameList:
699         - n_strx:          20
700           n_type:          0x1E
701           n_sect:          1
702           n_desc:          0
703           n_value:         4192
704         - n_strx:          2
705           n_type:          0xF
706           n_sect:          1
707           n_desc:          0
708           n_value:         4176
709         - n_strx:          15
710           n_type:          0xF
711           n_sect:          1
712           n_desc:          0
713           n_value:         4184
714         - n_strx:          25
715           n_type:          0xF
716           n_sect:          1
717           n_desc:          0
718           n_value:         4200
719         - n_strx:          30
720           n_type:          0xF
721           n_sect:          4
722           n_desc:          0
723           n_value:         32768
724         - n_strx:          38
725           n_type:          0xF
726           n_sect:          4
727           n_desc:          0
728           n_value:         32772
729         - n_strx:          57
730           n_type:          0x1
731           n_sect:          0
732           n_desc:          512
733           n_value:         0
734       StringTable:
735         - ' '
736         - _inlinedFunc
737         - _foo
738         - _bar
739         - _baz
740         - _fooBar
741         - _unavailableSymbol
742         - dyld_stub_binder
743         - ''
744         - ''
745         - ''
746         - ''
747         - ''
748         - ''
749       FunctionStarts:  [ 0x1050, 0x1058, 0x1060, 0x1068 ]
752 ;--- inputs.json.in
754   "headers": [ 
755   {
756     "path" : "DSTROOT/System/Library/Frameworks/Mismatch.framework/PrivateHeaders/Mismatch_Private.h",
757     "type" : "private"
758   }, 
759   {
760     "path" : "DSTROOT/System/Library/Frameworks/Mismatch.framework/Headers/Mismatch.h",
761     "type" : "public"
762   }
763   ],
764   "version": "3"