172131161SEvgeniy Stepanov // RUN: %clangxx_msan -O0 %s -o %t && %run %t 272131161SEvgeniy Stepanov 3*118757afSVitaly Buka // FIXME: Something changed in glibc 2.34, maybe earier. 4*118757afSVitaly Buka // UNSUPPORTED: glibc-2.34 5*118757afSVitaly Buka 672131161SEvgeniy Stepanov #include <sanitizer/msan_interface.h> 772131161SEvgeniy Stepanov 872131161SEvgeniy Stepanov volatile int global; pre_ctor()972131161SEvgeniy Stepanovstatic void pre_ctor() { 1072131161SEvgeniy Stepanov volatile int local; 1172131161SEvgeniy Stepanov global = 42; 1272131161SEvgeniy Stepanov local = 42; 1372131161SEvgeniy Stepanov } 1472131161SEvgeniy Stepanov 1572131161SEvgeniy Stepanov __attribute__((section(".preinit_array"), used)) void(*__local_pre_ctor)(void) = pre_ctor; 1672131161SEvgeniy Stepanov main(void)1772131161SEvgeniy Stepanovint main(void) { 1872131161SEvgeniy Stepanov return 0; 1972131161SEvgeniy Stepanov } 20