break;
if(et == TINTER)
break;
- return;
+ goto bad1;
case Wlitstr:
if(isnilinter(t)) {
case Wlitfloat:
case Wlitbool:
case Wlitstr:
+ case Wlitnil:
break;
}
case Wlitfloat:
case Wlitbool:
case Wlitstr:
+ case Wlitnil:
break;
}
nl->val.ctype = CTFLT;
wl = whatis(nl);
} else {
- yyerror("illegal combination of literals %O %E, %E", n->op, wl, wr);
+ yyerror("illegal combination of literals %O %W, %W", n->op, wl, wr);
return;
}
}
switch(TUP(n->op, wl)) {
default:
- yyerror("illegal literal %O %E", n->op, wl);
+ yyerror("illegal literal %O %W", n->op, wl);
return;
case TUP(OADD, Wlitint):
mpdivfltflt(fval, nr->val.u.fval);
break;
+ case TUP(OEQ, Wlitnil):
+ goto settrue;
+ case TUP(ONE, Wlitnil):
+ goto setfalse;
+
case TUP(OEQ, Wlitint):
if(mpcmpfixfix(xval, nr->val.u.xval) == 0)
goto settrue;