1a8f2362307b436023095e66efd678ae591c02184Anna Zaks// RUN: %clang_cc1 -analyze -analyzer-checker=core,unix -verify %s 28e8fb3be5bd78f0564444eca02b404566a5f3b5dAndy Gibbs// expected-no-diagnostics 3a8f2362307b436023095e66efd678ae591c02184Anna Zaks 4a8f2362307b436023095e66efd678ae591c02184Anna Zaksint printf(const char *restrict,...); 5a8f2362307b436023095e66efd678ae591c02184Anna Zaks 6a8f2362307b436023095e66efd678ae591c02184Anna Zaks// Testing core functionality of the region store. 7a8f2362307b436023095e66efd678ae591c02184Anna Zaks// radar://10127782 8a8f2362307b436023095e66efd678ae591c02184Anna Zaksint compoundLiteralTest() { 9a8f2362307b436023095e66efd678ae591c02184Anna Zaks int index = 0; 10a8f2362307b436023095e66efd678ae591c02184Anna Zaks for (index = 0; index < 2; index++) { 11a8f2362307b436023095e66efd678ae591c02184Anna Zaks int thing = (int []){0, 1}[index]; 12a8f2362307b436023095e66efd678ae591c02184Anna Zaks printf("thing: %i\n", thing); 13a8f2362307b436023095e66efd678ae591c02184Anna Zaks } 14a8f2362307b436023095e66efd678ae591c02184Anna Zaks return 0; 15a8f2362307b436023095e66efd678ae591c02184Anna Zaks} 16a8f2362307b436023095e66efd678ae591c02184Anna Zaks 17a8f2362307b436023095e66efd678ae591c02184Anna Zaksint compoundLiteralTest2() { 18a8f2362307b436023095e66efd678ae591c02184Anna Zaks int index = 0; 19a8f2362307b436023095e66efd678ae591c02184Anna Zaks for (index = 0; index < 3; index++) { 20a8f2362307b436023095e66efd678ae591c02184Anna Zaks int thing = (int [][3]){{0,0,0}, {1,1,1}, {2,2,2}}[index][index]; 21a8f2362307b436023095e66efd678ae591c02184Anna Zaks printf("thing: %i\n", thing); 22a8f2362307b436023095e66efd678ae591c02184Anna Zaks } 23a8f2362307b436023095e66efd678ae591c02184Anna Zaks return 0; 24a8f2362307b436023095e66efd678ae591c02184Anna Zaks} 25