diff --git a/libwccl/ops/functions/bool/iteration.h b/libwccl/ops/functions/bool/iteration.h
index 64197d462cd811510021f6dbd92651fbbc836d3c..dee6c88676ed6e0ad8272f6094021922f435137c 100644
--- a/libwccl/ops/functions/bool/iteration.h
+++ b/libwccl/ops/functions/bool/iteration.h
@@ -24,10 +24,10 @@ public:
 	std::string to_string(const Corpus2::Tagset& tagset) const;
 
 protected:
-	const PosFunctionPtr& left_pos_expr_;
-	const PosFunctionPtr& right_pos_expr_;
+	const PosFunctionPtr left_pos_expr_;
+	const PosFunctionPtr right_pos_expr_;
 	const VariableAccessor<Position> iter_var_acc_;
-	const BoolFunctionPtr& evaluating_expr_;
+	const BoolFunctionPtr evaluating_expr_;
 	
 	Iteration(
 		const PosFunctionPtr& left_pos_expr,