/* change not */
if (IS_NOT(tree)) {
+ int wasnot = IS_NOT(tree->left);
tree->left = backPatchLabels (tree->left,falseLabel,trueLabel);
/* if the left is already a IFX */
if ( ! IS_IFX(tree->left) )
tree->left = newNode (IFX,tree->left,NULL);
- tree->left->trueLabel = falseLabel ;
- tree->left->falseLabel= trueLabel ;
+ if (wasnot) {
+ tree->left->trueLabel = trueLabel ;
+ tree->left->falseLabel= falseLabel ;
+ } else {
+ tree->left->trueLabel = falseLabel ;
+ tree->left->falseLabel= trueLabel ;
+ }
return tree->left ;
}
we need to add the name to the publics list : this
actually means we are now compiling the compiler
support routine */
- if (name->cdef)
+ if (name->cdef) {
addSet(&publics,name);
+ }
}
else {
addSymChain(name);