X-Git-Url: http://nitlanguage.org?ds=sidebyside diff --git a/src/rapid_type_analysis.nit b/src/rapid_type_analysis.nit index 2d621e8..b59474f 100644 --- a/src/rapid_type_analysis.nit +++ b/src/rapid_type_analysis.nit @@ -255,6 +255,8 @@ class RapidTypeAnalysis add_cast(paramtype) end + if mmethoddef.is_abstract then continue + var npropdef = modelbuilder.mpropdef2node(mmethoddef) if npropdef isa AClassdef then @@ -311,6 +313,7 @@ class RapidTypeAnalysis if not ot.can_resolve_for(t, t, mainmodule) then continue var rt = ot.anchor_to(mainmodule, t) if live_types.has(rt) then continue + if not rt.is_legal_in(mainmodule) then continue if not check_depth(rt) then continue #print "{ot}/{t} -> {rt}" live_types.add(rt) @@ -327,6 +330,7 @@ class RapidTypeAnalysis for t in live_types do if not ot.can_resolve_for(t, t, mainmodule) then continue var rt = ot.anchor_to(mainmodule, t) + if not rt.is_legal_in(mainmodule) then continue live_cast_types.add(rt) #print " {ot}/{t} -> {rt}" end