# No error, try to go deeper in generic types
if node isa AType then
- for a in node.n_types do check_visibility(a, a.mtype.as(not null), mpropdef)
+ for a in node.n_types do
+ var t = a.mtype
+ if t == null then continue # Error, thus skipped
+ check_visibility(a, t, mpropdef)
+ end
else if mtype isa MGenericType then
for t in mtype.arguments do check_visibility(node, t, mpropdef)
end
for i in [0..mysignature.arity[ do
var myt = mysignature.mparameters[i].mtype
var prt = msignature.mparameters[i].mtype
- if not myt.is_subtype(mmodule, mclassdef.bound_mtype, prt) and
+ if not myt.is_subtype(mmodule, mclassdef.bound_mtype, prt) or
not prt.is_subtype(mmodule, mclassdef.bound_mtype, myt) then
var node: ANode
if nsig != null then node = nsig else node = self