1ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao#include "foo.h" 2ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao 3ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaovoid foo_func(int param1) { 4ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao int local_var = global_var; 5ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao for (int for_var = 100; for_var < 500; ++for_var) { 6ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao local_var = param1 + for_var; 7ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao } 8ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao bar_func(); 9ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao} 10ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao 11ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaostruct S1 { 12ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao int x; 13ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao}; 14ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao 15ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaostruct S2 { 16ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao int x; 17ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao}; 18ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao 19ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaovoid field_test(void) { 20ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao struct S1 s1; 21ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao s1.x = 0; 22ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao ((struct S2 *)0)->x = 0; 23ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao 24ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao struct MyStruct ms; 25ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao ms.field_var = 10; 26ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao} 27ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liao 28ea285162342df160e7860e26528bc7110bc6c0cdShih-wei Liaoint (^CP)(int) = ^(int x) { return x * global_var; }; 29