1// RUN: %clang_cc1 -fsyntax-only -verify %s 2// expected-no-diagnostics 3 4//PR9463 5int subfun(const char *text) { 6 const char *tmp = text; 7 return 0; 8} 9 10void fun(const char* text) { 11 int count = 0; 12 bool check = true; 13 14 if (check) 15 { 16 const char *end = text; 17 18 if (check) 19 { 20 do 21 { 22 if (check) 23 { 24 count = subfun(end); 25 goto end; 26 } 27 28 check = !check; 29 } 30 while (check); 31 } 32 // also works, after commenting following line of source code 33 int e = subfun(end); 34 } 35 end: 36 if (check) 37 ++count; 38} 39 40const char *text = "some text"; 41 42int main() { 43 const char *ptr = text; 44 45 fun(ptr); 46 47 return 0; 48} 49