src: add some asserts on `super` related things
[nit.git] / src / separate_compiler.nit
index 4819806..1e05f7e 100644 (file)
@@ -107,6 +107,7 @@ redef class ModelBuilder
                compiler.new_file("{mainmodule.name}.main")
                compiler.compile_nitni_global_ref_functions
                compiler.compile_main_function
+               compiler.compile_finalizer_function
 
                # compile methods
                for m in mainmodule.in_importation.greaters do
@@ -765,6 +766,7 @@ class SeparateCompiler
                        v.require_declaration("class_{c_name}")
                        v.add("{res}->class = &class_{c_name};")
                        self.generate_init_attr(v, res, mtype)
+                       v.set_finalizer res
                        v.add("return {res};")
                end
                v.add("\}")
@@ -1007,7 +1009,7 @@ class SeparateCompilerVisitor
        do
                var res: nullable RuntimeVariable = null
                var recv = arguments.first
-               var consider_null = not self.compiler.modelbuilder.toolcontext.opt_no_check_other.value or mmethod.name == "==" or mmethod.name == "!="
+               var consider_null = not self.compiler.modelbuilder.toolcontext.opt_no_check_null.value or mmethod.name == "==" or mmethod.name == "!="
                var maybenull = recv.mcasttype isa MNullableType and consider_null
                if maybenull then
                        self.add("if ({recv} == NULL) \{")