/* { dg-additional-options "-O3 -fsanitize=undefined -fno-malloc-dce" } */ void memory_exhausted(); void memcheck(void *ptr) { if (ptr) /* { dg-warning "leak" } */ memory_exhausted(); } int emalloc(int size) { memcheck(__builtin_malloc(size)); } /* { dg-message "allocated here" } */ int main() { int max_envvar_len = emalloc(max_envvar_len + 1); } /* { dg-message "use of uninitialized value 'max_envvar_len'" } */