metamodel: Check global_class existence instead of getting null
authorJean Privat <jean@pryen.org>
Thu, 11 Jun 2009 19:02:49 +0000 (15:02 -0400)
committerJean Privat <jean@pryen.org>
Wed, 24 Jun 2009 19:47:30 +0000 (15:47 -0400)
Signed-off-by: Jean Privat <jean@pryen.org>

src/metamodel/inheritance.nit
src/syntax/mmbuilder.nit

index 9988426..870f266 100644 (file)
@@ -47,7 +47,7 @@ redef class MMModule
        meth import_local_classes
        do
                for g in _global_classes do
-                       if self[g] != null then continue
+                       if _local_class_by_global.has_key(g) then continue
                        var impl = new MMImplicitLocalClass(self, g) 
                end
        end
index db15e8b..1f71787 100644 (file)
@@ -526,13 +526,10 @@ redef class PClassdef
                        local_class = new MMSrcLocalClass(name, self, arity)
                        mod.add_local_class(local_class)
                        local_classes[name] = local_class
-                       var g = mod.global_class_named(name)
-                       if g == null then
-                               # Intro
+                       if not mod.has_global_class_named(name) then
                                local_class.new_global
-                               g = local_class.global
                        else
-                               local_class.set_global(g)
+                               local_class.set_global(mod.global_class_named(name))
                        end
 
                end