diff --git a/src/language/ASTBuilder.cpp b/src/language/ASTBuilder.cpp
index 0583dcffd40305f223cb28d5fb593a4b02ad1dc2..8cbd519d1a207ba8cf3e1b232334de8593eed3ab 100644
--- a/src/language/ASTBuilder.cpp
+++ b/src/language/ASTBuilder.cpp
@@ -139,6 +139,22 @@ struct ASTBuilder::simplify_name_list : parse_tree::apply<ASTBuilder::simplify_n
   }
 };
 
+struct ASTBuilder::simplify_expression_list : parse_tree::apply<ASTBuilder::simplify_expression_list>
+{
+  template <typename... States>
+  static void
+  transform(std::unique_ptr<ASTNode>& n, States&&... st)
+  {
+    if (n->is_type<language::expression_list>()) {
+      if (n->children.size() == 1) {
+        n->remove_content();
+        n = std::move(n->children.back());
+        transform(n, st...);
+      }
+    }
+  }
+};
+
 struct ASTBuilder::simplify_statement_block : parse_tree::apply<ASTBuilder::simplify_statement_block>
 {
   template <typename... States>
@@ -238,7 +254,6 @@ using selector = parse_tree::selector<
                                 real,
                                 literal,
                                 name,
-                                expression_list,
                                 B_set,
                                 N_set,
                                 Z_set,
@@ -286,6 +301,7 @@ using selector = parse_tree::selector<
   ASTBuilder::simplify_for_statement_block::on<for_statement_block>,
   parse_tree::discard_empty::on<ignored, semicol, block>,
   ASTBuilder::simplify_name_list::on<name_list>,
+  ASTBuilder::simplify_expression_list::on<expression_list>,
   ASTBuilder::simplify_statement_block::on<statement_block>,
   ASTBuilder::simplify_for_init::on<for_init>,
   ASTBuilder::simplify_for_test::on<for_test>,
diff --git a/src/language/ASTBuilder.hpp b/src/language/ASTBuilder.hpp
index 703f46bc1d35f80534c2a02843581692624518d1..bae52ea9595bcedb14f54eb4f844d3d010ab040d 100644
--- a/src/language/ASTBuilder.hpp
+++ b/src/language/ASTBuilder.hpp
@@ -10,6 +10,7 @@ struct ASTBuilder
   struct rearrange;
   struct simplify_unary;
   struct simplify_name_list;
+  struct simplify_expression_list;
   struct simplify_statement_block;
   struct simplify_for_statement_block;
   struct simplify_for_init;