From c3d100ac441331cf1c318917d04ee4bb78d39331 Mon Sep 17 00:00:00 2001
From: Stephane Del Pino <stephane.delpino44@gmail.com>
Date: Tue, 11 Feb 2020 22:39:57 +0100
Subject: [PATCH] Fix compilation issue and get rid of a few warnings

---
 src/language/ASTNodeFunctionExpressionBuilder.cpp        | 1 -
 src/language/ASTNodeListAffectationExpressionBuilder.cpp | 2 +-
 tests/test_ASTNodeArraySubscriptExpressionBuilder.cpp    | 9 ++++++---
 3 files changed, 7 insertions(+), 5 deletions(-)

diff --git a/src/language/ASTNodeFunctionExpressionBuilder.cpp b/src/language/ASTNodeFunctionExpressionBuilder.cpp
index 414c7d9f7..27410d737 100644
--- a/src/language/ASTNodeFunctionExpressionBuilder.cpp
+++ b/src/language/ASTNodeFunctionExpressionBuilder.cpp
@@ -323,7 +323,6 @@ ASTNodeFunctionExpressionBuilder::ASTNodeFunctionExpressionBuilder(ASTNode& node
   std::unique_ptr function_processor = this->_buildArgumentConverter(function_descriptor, node);
 
   auto add_component_expression = [&](ASTNode& expression_node, ASTNode& domain_node) {
-    ASTNodeDataType expression_value_type = expression_node.m_data_type;
     ASTNodeDataType return_value_type     = ASTNodeDataType::undefined_t;
 
     ASTNode& image_domain_node = domain_node;
diff --git a/src/language/ASTNodeListAffectationExpressionBuilder.cpp b/src/language/ASTNodeListAffectationExpressionBuilder.cpp
index afab8db41..2218ae864 100644
--- a/src/language/ASTNodeListAffectationExpressionBuilder.cpp
+++ b/src/language/ASTNodeListAffectationExpressionBuilder.cpp
@@ -70,7 +70,7 @@ ASTNodeListAffectationExpressionBuilder::_buildAffectationProcessor(
         // LCOV_EXCL_STOP
       }
     } else {
-      throw parse_error("unexpected error: invalid value type");
+      throw parse_error("unexpected error: invalid value type", std::vector{node_sub_data_type.m_parent_node.begin()});
     }
   };
 
diff --git a/tests/test_ASTNodeArraySubscriptExpressionBuilder.cpp b/tests/test_ASTNodeArraySubscriptExpressionBuilder.cpp
index a3a27ad67..2de4eb51d 100644
--- a/tests/test_ASTNodeArraySubscriptExpressionBuilder.cpp
+++ b/tests/test_ASTNodeArraySubscriptExpressionBuilder.cpp
@@ -22,7 +22,8 @@ TEST_CASE("ASTNodeArraySubscriptExpressionBuilder", "[language]")
       }
       REQUIRE_NOTHROW(ASTNodeArraySubscriptExpressionBuilder{*node});
       REQUIRE(bool{node->m_node_processor});
-      REQUIRE(typeid(*node->m_node_processor).name() == typeid(ArraySubscriptProcessor<TinyVector<1>>).name());
+      auto& node_processor = *node->m_node_processor;
+      REQUIRE(typeid(node_processor).name() == typeid(ArraySubscriptProcessor<TinyVector<1>>).name());
     }
 
     SECTION("R^2")
@@ -34,7 +35,8 @@ TEST_CASE("ASTNodeArraySubscriptExpressionBuilder", "[language]")
       }
       REQUIRE_NOTHROW(ASTNodeArraySubscriptExpressionBuilder{*node});
       REQUIRE(bool{node->m_node_processor});
-      REQUIRE(typeid(*node->m_node_processor).name() == typeid(ArraySubscriptProcessor<TinyVector<2>>).name());
+      auto& node_processor = *node->m_node_processor;
+      REQUIRE(typeid(node_processor).name() == typeid(ArraySubscriptProcessor<TinyVector<2>>).name());
     }
 
     SECTION("R^3")
@@ -46,7 +48,8 @@ TEST_CASE("ASTNodeArraySubscriptExpressionBuilder", "[language]")
       }
       REQUIRE_NOTHROW(ASTNodeArraySubscriptExpressionBuilder{*node});
       REQUIRE(bool{node->m_node_processor});
-      REQUIRE(typeid(*node->m_node_processor).name() == typeid(ArraySubscriptProcessor<TinyVector<3>>).name());
+      auto& node_processor = *node->m_node_processor;
+      REQUIRE(typeid(node_processor).name() == typeid(ArraySubscriptProcessor<TinyVector<3>>).name());
     }
   }
 
-- 
GitLab