From mboxrd@z Thu Jan 1 00:00:00 1970 Date: Thu, 9 Nov 1995 08:31:13 -0500 From: ken@plan9.att.com ken@plan9.att.com Subject: No subject Topicbox-Message-UUID: 3397c710-eac8-11e9-9e20-41e7f4b1d025 Message-ID: <19951109133113.EQKaI3epIDdthUkZm4SgZ7rwsbnNQJLtF94ks452Eo4@z> > From: haertel@ichips.intel.com > The "8c" compiler sometimes loses track of side effects in expressions > whose values aren't used. For example, the following program should > print "1" but in fact prints "0". > ... thanks to haertel for finding this. my fix follows. ken 21a22,24 > l = n->left; > r = n->right; > o = n->op; 23,24c26,31 < if(nn != Z) < gmove(n, nn); --- > if(nn == Z) { > if(o == OINDEX) > nullwarn(l, r); > return; > } > gmove(n, nn); 28,30d34 < l = n->left; < r = n->right; < o = n->op;