De-anonymise a union so as to un-break compilation on gcc-2.95.


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@2147 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/coregrind/vg_proxylwp.c b/coregrind/vg_proxylwp.c
index 17d599a..23ae62c 100644
--- a/coregrind/vg_proxylwp.c
+++ b/coregrind/vg_proxylwp.c
@@ -196,7 +196,7 @@
    union {
       Int		syscallno;	/* system call completed */
       vki_ksiginfo_t	siginfo;	/* signal */
-   };
+   } u;
 };
 
 /* results pipe */
@@ -511,7 +511,7 @@
 	    /* First, send the signal info */
 	    sigreply.tid = px->tid;
 	    sigreply.req = PX_Signal;
-	    sigreply.siginfo = px->siginfo;
+	    sigreply.u.siginfo = px->siginfo;
 
 	    if (!send_reply(&sigreply)) {
 	       ret = 44;		/* incomplete or failed write */
@@ -553,7 +553,7 @@
 		  XXX how to distunguish between restartable and
 		  non-restartable syscalls?  Does it matter?
 	       */
-	       reply.syscallno = tst->syscallno;
+	       reply.u.syscallno = tst->syscallno;
 
 	       tst->m_eax = -VKI_ERESTARTSYS;
 	       px->state = PXS_IntReply;
@@ -598,7 +598,7 @@
 	    /* We were actually running the syscall when interrupted.
 	       reply should already be set up, including return in eax. */
 	    vg_assert(reply.req == PX_RunSyscall);
-	    vg_assert(reply.syscallno == tst->syscallno);
+	    vg_assert(reply.u.syscallno == tst->syscallno);
 	    vg_assert(tst->status == VgTs_WaitSys);
 	    px->state = PXS_IntReply;
 	    break;
@@ -607,7 +607,7 @@
 	    /* The syscall is done; we just need to send the results
 	       back. */
 	    vg_assert(reply.req == PX_RunSyscall);
-	    vg_assert(reply.syscallno == tst->syscallno);
+	    vg_assert(reply.u.syscallno == tst->syscallno);
 	    px->state = PXS_IntReply;
 	    break;
 
@@ -711,7 +711,7 @@
 	 case PX_RunSyscall:
 	    /* Run a syscall for our thread; results will be poked
 	       back into tst */
-	    reply.syscallno = tst->syscallno;
+	    reply.u.syscallno = tst->syscallno;
 
 	    vg_assert(px->state == PXS_WaitReq || 
 		      px->state == PXS_SigACK);
@@ -722,7 +722,7 @@
 		  on the way to us as we got the signal.  
 	       */
 	       px_printf("RunSyscall in SigACK: rejecting syscall %d with ERESTARTSYS\n",
-			 reply.syscallno);
+			 reply.u.syscallno);
 	       tst->m_eax = -VKI_ERESTARTSYS;
 	    } else {
 	       Int syscallno = tst->syscallno;
@@ -1150,7 +1150,7 @@
 	       VG_(printf)("tid %d in status %d\n",
 			   tst->tid, tst->status);
 	 
-	    vg_assert(res.syscallno == tst->syscallno);
+	    vg_assert(res.u.syscallno == tst->syscallno);
 	    vg_assert(tst->status == VgTs_WaitSys);
 
 	    VG_(post_syscall)(res.tid);
@@ -1159,12 +1159,12 @@
 	 case PX_Signal:
 	    if (VG_(clo_trace_signals) || VG_(clo_trace_syscalls))
 	       VG_(message)(Vg_DebugMsg, "sys_wait_results: got PX_Signal for TID %d, signal %d",
-			    res.tid, res.siginfo.si_signo);
+			    res.tid, res.u.siginfo.si_signo);
 
-	    vg_assert(res.siginfo.si_signo != 0);
+	    vg_assert(res.u.siginfo.si_signo != 0);
 	    if (VG_(threads)[res.tid].proxy && 
 		!VG_(threads)[res.tid].proxy->terminating)
-	       VG_(deliver_signal)(res.tid, &res.siginfo, True);
+	       VG_(deliver_signal)(res.tid, &res.u.siginfo, True);
 	    break;
 
 	 case PX_Ping: