xref: /aosp_15_r20/external/clang/test/CodeGen/2009-03-08-ZeroEltStructCrash.c (revision 67e74705e28f6214e480b399dd47ea732279e315)
1*67e74705SXin Li // RUN: %clang_cc1 -emit-llvm %s -o -
2*67e74705SXin Li // PR3744
3*67e74705SXin Li struct Empty {};
4*67e74705SXin Li struct Union {
5*67e74705SXin Li  union {
6*67e74705SXin Li    int zero_arr[0];
7*67e74705SXin Li  } contents;
8*67e74705SXin Li };
Foo(struct Union * u)9*67e74705SXin Li static inline void Foo(struct Union *u) {
10*67e74705SXin Li  int *array = u->contents.zero_arr;
11*67e74705SXin Li }
Bar(struct Union * u)12*67e74705SXin Li static void Bar(struct Union *u) {
13*67e74705SXin Li  Foo(u);
14*67e74705SXin Li }
15