diff --git a/libwccl/ops/operator.h b/libwccl/ops/operator.h
index 0ce80132cc004bfd0a00c1c30b4ff9fb4a1c25dc..1d2920d237204fada27a615e5118c5d01a49b218 100644
--- a/libwccl/ops/operator.h
+++ b/libwccl/ops/operator.h
@@ -209,7 +209,7 @@ protected:
 	Operator* clone_internal() const;
 
 private:
-	boost::shared_ptr<Function<const T> > function_body_;
+	boost::shared_ptr<const Function<T> > function_body_;
 };
 
 //--- implementation details ---
diff --git a/libwccl/ops/parsedexpression.h b/libwccl/ops/parsedexpression.h
index efe990569a8628a2ed0717e39c103b29d9692a71..c4174d9e9145c49d806b550e2e39f25f6d06054c 100644
--- a/libwccl/ops/parsedexpression.h
+++ b/libwccl/ops/parsedexpression.h
@@ -202,7 +202,7 @@ void ParsedExpression::set(const std::string& var_name, const T& value) {
 }
 
 inline
-void clean()
+void ParsedExpression::clean()
 {
 	//TODO - imlement this. The Variables object doesn't really
 	//provide a way to do that atm so it should be changed