1 // RUN: %clang_cc1 -emit-llvm %s -o -  | FileCheck %s
2 
3 namespace Common {
4 enum RenderMode {
5   kRenderEGA,
6   kRenderCGA
7 };
8 class C;
9 class A {
10   A();
11   C *_vm;
12   unsigned char _highlightColorTableVGA[];
13   static const unsigned char b[];
14 };
15 // CHECK: [[Common_A_b:@[^ ]+]] = {{(dso_local )?}}constant [1 x i8] zeroinitializer
16 class B {
17 public:
18   Common::RenderMode _configRenderMode;
19 };
20 class C : public B {};
A()21 A::A() {
22   0 == Common::kRenderCGA || _vm->_configRenderMode == Common::kRenderEGA
23       ? b
24       : _highlightColorTableVGA;
25 // Make sure the PHI value is casted correctly to the PHI type
26 // CHECK: %{{.*}} = phi [0 x i8]* [ bitcast ([1 x i8]* [[Common_A_b]] to [0 x i8]*), %{{.*}} ], [ %{{.*}}, %{{.*}} ]
27 }
28 const unsigned char A::b[] = { 0 };
29 }
30