Home | History | Annotate | Download | only in CodeGenObjCXX
      1 // RUN: %clang_cc1 -triple arm64 %s -verify -emit-llvm -o - | FileCheck %s
      2 // expected-no-diagnostics
      3 
      4 // Make sure we don't enter an infinite loop (rdar://21942503)
      5 
      6 int vals1[] = {
      7   [__objc_yes] = 1,
      8   [__objc_no] = 2
      9 };
     10 // CHECK: @vals1 = global [2 x i32] [i32 2, i32 1]
     11 
     12 int vals2[] = {
     13   [true] = 3,
     14   [false] = 4
     15 };
     16 // CHECK: @vals2 = global [2 x i32] [i32 4, i32 3]
     17 
     18 int vals3[] = {
     19   [false] = 1,
     20   [true] = 2,
     21   5
     22 };
     23 // CHECK: @vals3 = global [3 x i32] [i32 1, i32 2, i32 5]
     24 
     25 int vals4[2] = {
     26   [true] = 5,
     27   [false] = 6
     28 };
     29 // CHECK: @vals4 = global [2 x i32] [i32 6, i32 5]
     30 
     31 int vals5[3] = {
     32   [false] = 1,
     33   [true] = 2,
     34   6
     35 };
     36 // CHECK: @vals5 = global [3 x i32] [i32 1, i32 2, i32 6]
     37 
     38 enum SomeEnum : unsigned char {
     39   blah = 255
     40 };
     41 char vals6[] = {
     42   [blah] = 'a'
     43 };
     44 // CHECK: @vals6 = global [256 x i8] c"\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00\00a"
     45