diff --git a/alib2cli/src/ast/expression/FunctionCallExpression.h b/alib2cli/src/ast/expression/FunctionCallExpression.h index d352512a32d85126eb98cd07c14743d0efe0f02d..26dea68ee9169a2d85c5834370641940868fa49f 100644 --- a/alib2cli/src/ast/expression/FunctionCallExpression.h +++ b/alib2cli/src/ast/expression/FunctionCallExpression.h @@ -16,8 +16,6 @@ public: } std::shared_ptr < abstraction::Value > translateAndEval ( Environment & environment ) const override { - std::shared_ptr < abstraction::Value > result; - ext::vector < std::shared_ptr < abstraction::Value > > params; for ( const std::unique_ptr < Expression > & param : m_params ) { std::shared_ptr < abstraction::Value > value = param->translateAndEval ( environment ); diff --git a/alib2cli/src/ast/expression/ImmediateExpression.h b/alib2cli/src/ast/expression/ImmediateExpression.h index 87decb17c7efe8c17cba053c7d34e3c486f64f5b..f4ec4d6983e0ef423a8739d953cb18114c79f175 100644 --- a/alib2cli/src/ast/expression/ImmediateExpression.h +++ b/alib2cli/src/ast/expression/ImmediateExpression.h @@ -12,11 +12,9 @@ public: ImmediateExpression ( Type value ) : m_value ( std::move ( value ) ) { } - std::shared_ptr < abstraction::Value > translateAndEval ( Environment & environment ) const override { + std::shared_ptr < abstraction::Value > translateAndEval ( Environment & ) const override { Type copy = m_value; - std::shared_ptr < abstraction::ValueHolder < Type > > value = std::make_shared < abstraction::ValueHolder < Type > > ( std::move ( copy ), true ); - environment.holdTemporary ( value ); - return value; + return std::make_shared < abstraction::ValueHolder < Type > > ( std::move ( copy ), true ); } };