diff --git a/src/testdir/test_vim9_class.vim b/src/testdir/test_vim9_class.vim
index 0f812f1..be9b18e 100644
--- a/src/testdir/test_vim9_class.vim
+++ b/src/testdir/test_vim9_class.vim
@@ -1373,6 +1373,47 @@
   v9.CheckScriptSuccess(lines)
 enddef
 
+def Test_using_base_class()
+  var lines =<< trim END
+    vim9script
+
+    class BaseEE
+        def Enter(): any
+            return null
+        enddef
+        def Exit(resource: any): void
+        enddef
+    endclass
+
+    class ChildEE extends BaseEE
+        def Enter(): any
+            return 42
+        enddef
+
+        def Exit(resource: number): void
+            g:result ..= '/exit'
+        enddef
+    endclass
+
+    def With(ee: BaseEE)
+        var r = ee.Enter()
+        try
+            g:result ..= r
+        finally
+            g:result ..= '/finally'
+            ee.Exit(r)
+        endtry
+    enddef
+
+    g:result = ''
+    With(ChildEE.new())
+    assert_equal('42/finally/exit', g:result)
+  END
+  v9.CheckScriptSuccess(lines)
+  unlet g:result
+enddef
+
+
 def Test_class_import()
   var lines =<< trim END
       vim9script
diff --git a/src/version.c b/src/version.c
index 0f259bc..4213800 100644
--- a/src/version.c
+++ b/src/version.c
@@ -696,6 +696,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1296,
+/**/
     1295,
 /**/
     1294,
diff --git a/src/vim9execute.c b/src/vim9execute.c
index 605cfb2..49042a4 100644
--- a/src/vim9execute.c
+++ b/src/vim9execute.c
@@ -4143,8 +4143,10 @@
 	    // call a method on an interface
 	    case ISN_METHODCALL:
 		{
+		    cmfunc_T *mfunc = iptr->isn_arg.mfunc;
+
 		    SOURCING_LNUM = iptr->isn_lnum;
-		    tv = STACK_TV_BOT(-1);
+		    tv = STACK_TV_BOT(-1 - mfunc->cmf_argcount);
 		    if (tv->v_type != VAR_OBJECT)
 		    {
 			object_required_error(tv);
@@ -4154,7 +4156,6 @@
 		    class_T *cl = obj->obj_class;
 
 		    // convert the interface index to the object index
-		    cmfunc_T *mfunc = iptr->isn_arg.mfunc;
 		    int idx = object_index_from_itf_index(mfunc->cmf_itf,
 						    TRUE, mfunc->cmf_idx, cl);
 
