1 /*
2    bug-2313.c - didn't compile (validateLink failed due to bug in jump-after-cast-optimization).
3  */
4 
5 #include <testfwk.h>
6 
7 #pragma disable_warning 85
8 
9 #pragma std_c99
10 
11 #include <stdint.h>
12 
13 typedef uint16_t usize_t;
14 typedef int16_t arg_t;
15 
16 typedef struct u_data {
17     arg_t       u_argn1;
18 } u_data;
19 
valaddr(const char * base,usize_t size)20 usize_t valaddr(const char *base, usize_t size)
21 {
22 	return(0);
23 }
24 
25 struct u_data udata;
26 
27 #define statloc (int __data *)udata.u_argn1
28 
f(void)29 void f(void)
30 {
31 	statloc && !valaddr((char *) statloc, sizeof(int));
32 }
33 
testBug(void)34 void testBug(void)
35 {
36 	f();
37 }
38