/**
* Generates a CopyStm.
*/
private void putCopy(CopyStm.Kind kind, Value base, ValueBox firstchild, ValueBox firstattr, ValueBox nextnode) {
cfg.addStatement(new CopyStm(kind, hardcodeResult = makevar(), translateExpr(base),
firstchild!=null ? translateOrEmptyIfNull(firstchild.getValue()) : null,
firstattr!=null ? translateOrEmptyIfNull(firstattr.getValue()) : null,
nextnode!=null ? translateOrEmptyIfNull(nextnode.getValue()) : null,
context.getCurrentOrigin()));
checkDiscardedResult();