1234567891011121314151617181920212223242526272829303132333435363738394041 |
- int foo(int *ptr, int i)
- {
- int *p;
- switch (i - i) { // will be optimized to 0
- case 0:
- return 0;
- case 1: // will be optimized away
- p = ptr;
- do { // will be an unreachable loop
- *p++ = 123;
- } while (--i);
- break;
- }
- return 1;
- }
- int bar(int *ptr, int i)
- {
- int *p;
- switch (i - i) { // will be optimized to 0
- case 0:
- return 0;
- case 1: // will be optimized away
- // p is uninitialized
- do { // will be an unreachable loop
- *p++ = 123;
- } while (--i);
- break;
- }
- return 1;
- }
- /*
- * check-name: crazy02-not-so.c
- * check-command: sparse -Wno-decl $file
- */
|