diff --git a/src/eval/eval_ir.c b/src/eval/eval_ir.c index 87bffbd8..4f3104c3 100644 --- a/src/eval/eval_ir.c +++ b/src/eval/eval_ir.c @@ -122,7 +122,10 @@ e_push_irnode(Arena *arena, RDI_EvalOp op) internal void e_irnode_push_child(E_IRNode *parent, E_IRNode *child) { - SLLQueuePush_NZ(&e_irnode_nil, parent->first, parent->last, child, next); + if(parent != &e_irnode_nil && child != &e_irnode_nil) + { + SLLQueuePush_NZ(&e_irnode_nil, parent->first, parent->last, child, next); + } } //- rjf: ir subtree building helpers