X-Git-Url: http://nitlanguage.org?ds=sidebyside diff --git a/src/rapid_type_analysis.nit b/src/rapid_type_analysis.nit index c072314..88e2b7e 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 @@ -314,7 +316,9 @@ class RapidTypeAnalysis if not check_depth(rt) then continue #print "{ot}/{t} -> {rt}" live_types.add(rt) - todo_types.add(rt) + # unshift means a deep-first visit. + # So that the `check_depth` limit is reached sooner. + todo_types.unshift(rt) end end #print "MType {live_types.length}: {live_types.join(", ")}"