From: Jean Privat Date: Tue, 6 Oct 2015 22:47:35 +0000 (-0400) Subject: typing: add a node parameter to `CallSite::check_signature` X-Git-Tag: v0.7.9~40^2~1 X-Git-Url: http://nitlanguage.org typing: add a node parameter to `CallSite::check_signature` Signed-off-by: Jean Privat --- diff --git a/src/semantize/typing.nit b/src/semantize/typing.nit index 935e1fc..4a00d04 100644 --- a/src/semantize/typing.nit +++ b/src/semantize/typing.nit @@ -655,9 +655,9 @@ class CallSite # If null then no specific association is required. var signaturemap: nullable SignatureMap = null - private fun check_signature(v: TypeVisitor, args: Array[AExpr]): Bool + private fun check_signature(v: TypeVisitor, node: ANode, args: Array[AExpr]): Bool do - var map = v.check_signature(self.node, args, self.mproperty, self.msignature) + var map = v.check_signature(node, args, self.mproperty, self.msignature) signaturemap = map return map == null end @@ -1720,7 +1720,7 @@ redef class ASendExpr var args = compute_raw_arguments - callsite.check_signature(v, args) + callsite.check_signature(v, node, args) if callsite.mproperty.is_init then var vmpropdef = v.mpropdef @@ -1839,7 +1839,7 @@ redef class ASendReassignFormExpr var args = compute_raw_arguments - callsite.check_signature(v, args) + callsite.check_signature(v, node, args) var readtype = callsite.msignature.return_mtype if readtype == null then @@ -1856,7 +1856,7 @@ redef class ASendReassignFormExpr args = args.to_a # duplicate so raw_arguments keeps only the getter args args.add(self.n_value) - wcallsite.check_signature(v, args) + wcallsite.check_signature(v, node, args) self.is_typed = true end @@ -1982,7 +1982,7 @@ redef class ASuperExpr var args = self.n_args.to_a if args.length > 0 then - callsite.check_signature(v, args) + callsite.check_signature(v, self, args) else # Check there is at least enough parameters if mpropdef.msignature.arity < msignature.arity then @@ -2081,7 +2081,7 @@ redef class ANewExpr end var args = n_args.to_a - callsite.check_signature(v, args) + callsite.check_signature(v, node, args) end end