typedef union { unsigned char member3; signed short member4; unsigned int member5; } UNI02; struct srt_dat_t { UNI02 un2; unsigned long member1; signed short member2; }; struct srt_dat_t exsrt1; void extern_test (struct srt_dat_t arg1) { arg1.un2.member3++; arg1.member1++; arg1.member2++; } int main (void) { extern_test (exsrt1); return (0); }