$ ./a.out test.c:4:13: runtime error: applying zero offset to null pointer SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior test.c:4:13 in $ cat test.c int main(int argc, char **argv) { char *ptr = (char *)(long)(argc - 1); ptr += 0; return (ptr == argv[0]); }