diff --git a/src/language/ASTNodeDataTypeBuilder.cpp b/src/language/ASTNodeDataTypeBuilder.cpp
index 3ba18153d236c6592833c76ee0fa1030ec2a19cd..20233042ef2bcc0eb38e104ecdb80fdf24ffb1f3 100644
--- a/src/language/ASTNodeDataTypeBuilder.cpp
+++ b/src/language/ASTNodeDataTypeBuilder.cpp
@@ -122,9 +122,13 @@ ASTNodeDataTypeBuilder::_buildNodeDataTypes(ASTNode& n)
           Assert(found);
           i_symbol->attributes().setDataType(data_type);
         };
-#warning This test is probably incorrect
+
         if (parameters_domain_node.children.size() == 0) {
-          simple_type_allocator(parameters_domain_node, parameters_name_node);
+          if (parameters_name_node.is<language::name_list>()) {
+            simple_type_allocator(parameters_domain_node, *parameters_name_node.children[0]);
+          } else {
+            simple_type_allocator(parameters_domain_node, parameters_name_node);
+          }
         } else {
           for (size_t i = 0; i < function_descriptor.domainMappingNode().children.size(); ++i) {
             simple_type_allocator(*parameters_domain_node.children[i], *parameters_name_node.children[i]);
diff --git a/tests/test_ASTNodeDataTypeBuilder.cpp b/tests/test_ASTNodeDataTypeBuilder.cpp
index 5faacdbf3593cdc38cb8cb1922e92593fbd06860..4729bdecfe1ca55863cdaf3ff9d026d5247d2e53 100644
--- a/tests/test_ASTNodeDataTypeBuilder.cpp
+++ b/tests/test_ASTNodeDataTypeBuilder.cpp
@@ -146,8 +146,8 @@ let f : R -> R, (x) -> x;
  `-(language::let_declaration:void)
      `-(language::name:f:function)
 )";
-#warning finish this test
-      //      CHECK_AST(data, result);
+
+      CHECK_AST(data, result);
     }
   }