From 6eeba7f0ff1d289aac11a3e26383dc3f6385f929 Mon Sep 17 00:00:00 2001
From: Vasileios Karakasis <vkarak@gmail.com>
Date: Tue, 5 Dec 2017 10:11:12 +0100
Subject: [PATCH] Fix AVX2 compilation regression. (#409)

Also removes vestigial `intitial` procedure generated from a MOD file with no INITIAL block.
Fixes #407.
---
 modcc/module.cpp       | 3 ++-
 modcc/simd_printer.hpp | 6 ++++--
 2 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/modcc/module.cpp b/modcc/module.cpp
index 02db4018..aa8b33ae 100644
--- a/modcc/module.cpp
+++ b/modcc/module.cpp
@@ -218,7 +218,8 @@ bool Module::semantic() {
         symbols_["initial"] = make_symbol<ProcedureExpression>(
                 Location(), "initial",
                 std::vector<expression_ptr>(),
-                make_expression<BlockExpression>(Location(), expr_list_type(), false)
+                make_expression<BlockExpression>(Location(), expr_list_type(), false),
+                procedureKind::initial
         );
     }
     auto initial_api = make_empty_api_method("nrn_init", "initial");
diff --git a/modcc/simd_printer.hpp b/modcc/simd_printer.hpp
index fa5c768d..caca3853 100644
--- a/modcc/simd_printer.hpp
+++ b/modcc/simd_printer.hpp
@@ -498,8 +498,10 @@ void SimdPrinter<Arch>::visit(AssignmentExpression *e) {
                                            });
     }
     else {
-        // that's an ordinary assignment; use base printer
-        CPrinter::visit(e);
+        // that's an ordinary assignment
+        lhs->accept(this);
+        text_ << " = ";
+        rhs->accept(this);
     }
 }
 
-- 
GitLab