niti: do not create `true` and `false` if Bool does not exists
authorJean Privat <jean@pryen.org>
Fri, 12 Dec 2014 04:03:49 +0000 (23:03 -0500)
committerJean Privat <jean@pryen.org>
Fri, 12 Dec 2014 04:23:57 +0000 (23:23 -0500)
Signed-off-by: Jean Privat <jean@pryen.org>

src/interpreter/naive_interpreter.nit

index e3cc1ca..74a1929 100644 (file)
@@ -71,10 +71,12 @@ class NaiveInterpreter
 
        init
        do
-               self.true_instance = new PrimitiveInstance[Bool](mainmodule.bool_type, true)
-               init_instance_primitive(self.true_instance)
-               self.false_instance = new PrimitiveInstance[Bool](mainmodule.bool_type, false)
-               init_instance_primitive(self.false_instance)
+               if mainmodule.model.get_mclasses_by_name("Bool") != null then
+                       self.true_instance = new PrimitiveInstance[Bool](mainmodule.bool_type, true)
+                       init_instance_primitive(self.true_instance)
+                       self.false_instance = new PrimitiveInstance[Bool](mainmodule.bool_type, false)
+                       init_instance_primitive(self.false_instance)
+               end
                self.null_instance = new PrimitiveInstance[nullable Object](mainmodule.model.null_type, null)
        end