1603c4be006d8c53905d736bf1f19a49f5ce98276Alexey Samsonov// RUN: %clang_cc1 -triple x86_64-apple-darwin10 -fsyntax-only %s
2b3cedf98a3c8545da2234c2d35cb5d687984035fKostya Serebryany// rdar://8945175
3b3cedf98a3c8545da2234c2d35cb5d687984035fKostya Serebryany
4b3cedf98a3c8545da2234c2d35cb5d687984035fKostya Serebryanystruct X {
5b3cedf98a3c8545da2234c2d35cb5d687984035fKostya Serebryany  int array[0];
6b3cedf98a3c8545da2234c2d35cb5d687984035fKostya Serebryany  int array1[0];
7b3cedf98a3c8545da2234c2d35cb5d687984035fKostya Serebryany  int array2[0];
8b3cedf98a3c8545da2234c2d35cb5d687984035fKostya Serebryany  X();
9b3cedf98a3c8545da2234c2d35cb5d687984035fKostya Serebryany  ~X();
10b3cedf98a3c8545da2234c2d35cb5d687984035fKostya Serebryany};
1116e0075746b21ed866ec3be21ef0d1e46f0efed5Kostya Serebryany
12b3cedf98a3c8545da2234c2d35cb5d687984035fKostya Serebryanystruct Y {
13f7667cc84cdd8923c0b6c7cfc92b7bd5692ce18cAlexey Samsonov  int first;
1416e0075746b21ed866ec3be21ef0d1e46f0efed5Kostya Serebryany  X padding;
15b3cedf98a3c8545da2234c2d35cb5d687984035fKostya Serebryany  int second;
16b3cedf98a3c8545da2234c2d35cb5d687984035fKostya Serebryany};
17b3cedf98a3c8545da2234c2d35cb5d687984035fKostya Serebryany
18c925697df6626bb0ea27ea96539bf0580f8f3d3dAlexey Samsonovint zero_size_array[(sizeof(Y)  == 8) -1]; // no error here!
19c925697df6626bb0ea27ea96539bf0580f8f3d3dAlexey Samsonov