@@ -242,7 +242,7 @@ private class CallSiteVisitor
242
242
facet = contract_facet
243
243
end
244
244
245
- return ast_builder .create_callsite (toolcontext .modelbuilder , visited_propdef , facet , callsite .recv_is_self )
245
+ return ast_builder .create_callsite (toolcontext .modelbuilder , visited_propdef , callsite . recv , facet , callsite .recv_is_self )
246
246
end
247
247
end
248
248
@@ -505,7 +505,7 @@ redef class MExpect
505
505
506
506
redef fun adapt_method_to_contract (v : ContractsVisitor , mfacet : MFacet , n_mpropdef : AMethPropdef )
507
507
do
508
- var callsite = v .ast_builder .create_callsite (v .toolcontext .modelbuilder , n_mpropdef , self , true )
508
+ var callsite = v .ast_builder .create_callsite (v .toolcontext .modelbuilder , n_mpropdef , self . intro_mclassdef . bound_mtype , self , true )
509
509
var args = n_mpropdef .n_signature .make_parameter_read (v .ast_builder )
510
510
var n_callexpect = v .ast_builder .make_call (new ASelfExpr , callsite ,args )
511
511
# Creation of the new instruction block with the call to expect condition
@@ -620,7 +620,7 @@ redef class MEnsure
620
620
621
621
redef fun adapt_method_to_contract (v : ContractsVisitor , mfacet : MFacet , n_mpropdef : AMethPropdef )
622
622
do
623
- var callsite = v .ast_builder .create_callsite (v .toolcontext .modelbuilder , n_mpropdef , self , true )
623
+ var callsite = v .ast_builder .create_callsite (v .toolcontext .modelbuilder , n_mpropdef , self . intro_mclassdef . bound_mtype , self , true )
624
624
var n_self = new ASelfExpr
625
625
# argument to call the contract method
626
626
var args = n_mpropdef .n_signature .make_parameter_read (v .ast_builder )
@@ -683,7 +683,7 @@ redef class MEnsure
683
683
684
684
# Create a new old_object to store the old expression value
685
685
var old_class_initdef = old_mclass .intro .default_init
686
- var callsite_new_old_class = v .ast_builder .create_callsite (v .toolcontext .modelbuilder , n_mpropdef , old_class_initdef .mproperty , false )
686
+ var callsite_new_old_class = v .ast_builder .create_callsite (v .toolcontext .modelbuilder , n_mpropdef , old_class_initdef .mproperty . intro_mclassdef . bound_mtype , old_class_initdef . mproperty , false )
687
687
var n_new_old_class = v .ast_builder .make_new (callsite_new_old_class , null )
688
688
n_new_old_class .n_type = old_mclass .mclass_type .create_ast_representation
689
689
@@ -715,7 +715,7 @@ redef class MEnsure
715
715
n_args_call_init_property .add (n_new_old_class )
716
716
end
717
717
718
- var callsite_old_class_init = v .ast_builder .create_callsite (v .toolcontext .modelbuilder , n_mpropdef , old_mclass .init_old_property .as (not null ), true )
718
+ var callsite_old_class_init = v .ast_builder .create_callsite (v .toolcontext .modelbuilder , n_mpropdef , old_mclass .init_old_property .intro_mclassdef . bound_mtype , old_mclass . init_old_property . as (not null ), true )
719
719
var ncall_init_old = v .ast_builder .make_call (new ASelfExpr , callsite_old_class_init , n_args_call_init_property )
720
720
721
721
new_block .add v .ast_builder .make_var_assign (self .old_param , ncall_init_old )
@@ -731,7 +731,7 @@ redef class MInvariant
731
731
732
732
redef fun adapt_method_to_contract (v : ContractsVisitor , mfacet : MFacet , n_mpropdef : AMethPropdef )
733
733
do
734
- var callsite = v .ast_builder .create_callsite (v .toolcontext .modelbuilder , n_mpropdef , self , true )
734
+ var callsite = v .ast_builder .create_callsite (v .toolcontext .modelbuilder , n_mpropdef , self . intro_mclassdef . bound_mtype , self , true )
735
735
var n_self = new ASelfExpr
736
736
# build the call to the contract method
737
737
var n_call = v .ast_builder .make_call (n_self , callsite , null )
@@ -1094,7 +1094,7 @@ redef class MMethod
1094
1094
var args : Array [AExpr ]
1095
1095
args = n_contractdef .n_signature .make_parameter_read (v .ast_builder )
1096
1096
1097
- var callsite = v .ast_builder .create_callsite (v .toolcontext .modelbuilder , n_contractdef , called , true )
1097
+ var callsite = v .ast_builder .create_callsite (v .toolcontext .modelbuilder , n_contractdef , called . intro_mclassdef . bound_mtype , called , true )
1098
1098
var n_call = v .ast_builder .make_call (new ASelfExpr , callsite , args )
1099
1099
1100
1100
if self .intro .msignature .return_mtype == null then
0 commit comments