1 2struct tag { 3 int m1; 4 char *m2[5]; 5} s1, *p1; 6 7int i; 8 9main() 10{ 11 s1.m1 = -1; 12 p1 = &s1; 13 14 if ( func1( &p1->m1 ) == -1 ) 15 foo ("ok"); 16 else 17 abort (); 18 19 i = 3; 20 s1.m2[3]= "123"; 21 22 if ( strlen( (p1->m2[i])++ ) == 3 ) 23 foo ("ok"); 24 else 25 abort (); 26 27 exit (0); 28} 29 30func1(int *p) { return(*p); } 31 32foo (char *s) {} 33