From 0e40f5829a880ba63a3a8603e4babf2c2f7659e5 Mon Sep 17 00:00:00 2001
From: user <user@localhost.localdomain>
Date: Mon, 9 Dec 2019 07:51:46 -0800
Subject: compilation fixes for clang

---
 starts/meaning-vm/level-2/baseref.hpp | 2 +-
 starts/meaning-vm/level-2/funcs.cpp   | 4 ++--
 starts/meaning-vm/level-2/funcs.hpp   | 2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)

(limited to 'starts')

diff --git a/starts/meaning-vm/level-2/baseref.hpp b/starts/meaning-vm/level-2/baseref.hpp
index 921d1d3..c66d1a7 100644
--- a/starts/meaning-vm/level-2/baseref.hpp
+++ b/starts/meaning-vm/level-2/baseref.hpp
@@ -17,7 +17,7 @@ struct baseref : public level1::baseref<ref>
 	using level1::template baseref<ref>::baseref;
 
 	// thread-local context
-	static ref context() { return level2::context(); }
+	static ref & context() { return level2::context(); }
 
 	template <typename... Refs>
 	ref operator()(Refs... args) { return level2::dohabit(self, {args.ptr()...}); }
diff --git a/starts/meaning-vm/level-2/funcs.cpp b/starts/meaning-vm/level-2/funcs.cpp
index 3c34c41..ed50c39 100644
--- a/starts/meaning-vm/level-2/funcs.cpp
+++ b/starts/meaning-vm/level-2/funcs.cpp
@@ -11,7 +11,7 @@ namespace level2 {
 
 using namespace concepts;
 
-ref context()
+ref & context()
 {
 	static thread_local auto ctx = a(concepts::context);
 	return ctx;
@@ -19,7 +19,7 @@ ref context()
 
 ref makehabit(ref name, std::initializer_list<ref> argnames, std::function<void(ref)> code)
 {
-	ref habit = level1::a(habit, name);
+	ref habit = level1::a(concepts::habit, name);
 	ref posarg = habit;
 	for (auto argname : argnames) {
 		ref nextarg = a(positional-argument);
diff --git a/starts/meaning-vm/level-2/funcs.hpp b/starts/meaning-vm/level-2/funcs.hpp
index f32679c..2a92bfd 100644
--- a/starts/meaning-vm/level-2/funcs.hpp
+++ b/starts/meaning-vm/level-2/funcs.hpp
@@ -8,7 +8,7 @@
 namespace intellect {
 namespace level2 {
 
-ref context();
+ref & context();
 ref makehabit(ref name, std::initializer_list<ref> argnames, std::function<void(ref)> code);
 ref dohabit(ref habit, std::initializer_list<ref> args);
 
-- 
cgit v1.2.3