public void atSymbol(Symbol n) throws CompileError { fatal(); }
public void atASTList(ASTList n) throws CompileError { fatal(); }
public void atPair(Pair n) throws CompileError { fatal(); }
@Override public void atSymbol(Symbol n) throws CompileError { fatal(); }
@Override public void atASTList(ASTList n) throws CompileError { fatal(); }
@Override public void atPair(Pair n) throws CompileError { fatal(); }
protected void atAssignCore(Expr expr, int op, ASTree right, int type, int dim, String cname) throws CompileError { if (op == PLUS_E && dim == 0 && type == CLASS) atStringPlusEq(expr, type, dim, cname, right); else { right.accept(this); if (invalidDim(exprType, arrayDim, className, type, dim, cname, false) || (op != '=' && dim > 0)) badAssign(expr); if (op != '=') { int token = assignOps[op - MOD_E]; int k = lookupBinOp(token); if (k < 0) fatal(); atArithBinExpr(expr, token, k, type); } } if (op != '=' || (dim == 0 && !isRefType(type))) atNumCastExpr(exprType, type); // type check should be done here. }
break; default : fatal();
protected void atAssignCore(Expr expr, int op, ASTree right, int type, int dim, String cname) throws CompileError { if (op == PLUS_E && dim == 0 && type == CLASS) atStringPlusEq(expr, type, dim, cname, right); else { right.accept(this); if (invalidDim(exprType, arrayDim, className, type, dim, cname, false) || (op != '=' && dim > 0)) badAssign(expr); if (op != '=') { int token = assignOps[op - MOD_E]; int k = lookupBinOp(token); if (k < 0) fatal(); atArithBinExpr(expr, token, k, type); } } if (op != '=' || (dim == 0 && !isRefType(type))) atNumCastExpr(exprType, type); // type check should be done here. }
break; default : fatal();
defaultPc = bytecode.currentPc(); else if (op != CASE) fatal(); else { pairs[ipairs++]
defaultPc = bytecode.currentPc(); else if (op != CASE) fatal(); else { pairs[ipairs++]
public void atASTList(ASTList n) throws CompileError { fatal(); }
public void atASTList(ASTList n) throws CompileError { fatal(); }