1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
#pragma safety enable; struct X { char * p; char * p2; }; char* strdup(const char *s); void free(void* p); int main() { const char* p0 = strdup("a"); struct X x = { .p = p0 }; free(x.p); } #pragma cake diagnostic check "-Wanalyzer-null-dereference"