llvm-project
27 строк · 834.0 Байт
1// RUN: %clang_cc1 -triple x86_64-apple-darwin -Wno-objc-root-class -fobjc-arc -emit-llvm -o - %s | FileCheck %s
2
3@interface FlexibleArrayMember {
4char flexible_array[][4][2];
5}
6@end
7@implementation FlexibleArrayMember
8@end
9// CHECK: @OBJC_METH_VAR_NAME_{{.*}} = private unnamed_addr constant {{.*}} c"flexible_array\00"
10// CHECK-NEXT: @OBJC_METH_VAR_TYPE_{{.*}} = private unnamed_addr constant {{.*}} c"^[4[2c]]\00"
11
12
13typedef char FlexibleArray[];
14
15struct Packet {
16int size;
17FlexibleArray data;
18};
19
20@interface VariableSizeIvar {
21struct Packet flexible_struct;
22}
23@end
24@implementation VariableSizeIvar
25@end
26// CHECK: @OBJC_METH_VAR_NAME_{{.*}} = private unnamed_addr constant {{.*}} c"flexible_struct\00"
27// CHECK-NEXT: @OBJC_METH_VAR_TYPE_{{.*}} = private unnamed_addr constant {{.*}} c"{Packet=\22size\22i\22data\22[0c]}\00"
28