diff --git a/src/testdir/test_vim9_disassemble.vim b/src/testdir/test_vim9_disassemble.vim
index 9196184..7875e84 100644
--- a/src/testdir/test_vim9_disassemble.vim
+++ b/src/testdir/test_vim9_disassemble.vim
@@ -1,5 +1,7 @@
 " Test the :disassemble command, and compilation as a side effect
 
+source check.vim
+
 func NotCompiled()
   echo "not"
 endfunc
@@ -332,6 +334,63 @@
   assert_notmatch('JUMP', instr)
 enddef
 
+def WithFunc()
+  let funky1: func
+  let funky2: func = function("len")
+  let party1: partial
+  let party2: partial = funcref("UserFunc")
+enddef
+
+def Test_disassemble_function()
+  let instr = execute('disassemble WithFunc')
+  assert_match('WithFunc.*'
+        \ .. 'let funky1: func.*'
+        \ .. '0 PUSHFUNC "\[none]".*'
+        \ .. '1 STORE $0.*'
+        \ .. 'let funky2: func = function("len").*'
+        \ .. '2 PUSHS "len".*'
+        \ .. '3 BCALL function(argc 1).*'
+        \ .. '4 STORE $1.*'
+        \ .. 'let party1: partial.*'
+        \ .. '5 PUSHPARTIAL "\[none]".*'
+        \ .. '6 STORE $2.*'
+        \ .. 'let party2: partial = funcref("UserFunc").*'
+        \ .. '7 PUSHS "UserFunc".*'
+        \ .. '8 BCALL funcref(argc 1).*'
+        \ .. '9 STORE $3.*'
+        \ .. '10 PUSHNR 0.*'
+        \ .. '11 RETURN.*'
+        \, instr)
+enddef
+
+if has('channel')
+  def WithChannel()
+    let job1: job
+    let job2: job = job_start("donothing")
+    let chan1: channel
+  enddef
+endif
+
+def Test_disassemble_channel()
+  CheckFeature channel
+
+  let instr = execute('disassemble WithChannel')
+  assert_match('WithChannel.*'
+        \ .. 'let job1: job.*'
+        \ .. '\d PUSHJOB "no process".*'
+        \ .. '\d STORE $0.*'
+        \ .. 'let job2: job = job_start("donothing").*'
+        \ .. '\d PUSHS "donothing".*'
+        \ .. '\d BCALL job_start(argc 1).*'
+        \ .. '\d STORE $1.*'
+        \ .. 'let chan1: channel.*'
+        \ .. '\d PUSHCHANNEL 0.*'
+        \ .. '\d STORE $2.*'
+        \ .. '\d PUSHNR 0.*'
+        \ .. '\d RETURN.*'
+        \, instr)
+enddef
+
 def WithLambda(): string
   let F = {a -> "X" .. a .. "X"}
   return F("x")
diff --git a/src/testdir/test_vim9_script.vim b/src/testdir/test_vim9_script.vim
index c1865e3..c01ab83 100644
--- a/src/testdir/test_vim9_script.vim
+++ b/src/testdir/test_vim9_script.vim
@@ -56,6 +56,7 @@
   if has('channel')
     let chan1: channel
     let job1: job
+    let job2: job = job_start('willfail')
   endif
   if has('float')
     let float1: float = 3.4
diff --git a/src/version.c b/src/version.c
index 6ecd281..56a0aee 100644
--- a/src/version.c
+++ b/src/version.c
@@ -739,6 +739,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    343,
+/**/
     342,
 /**/
     341,
diff --git a/src/vim9compile.c b/src/vim9compile.c
index 64ed038..158770c 100644
--- a/src/vim9compile.c
+++ b/src/vim9compile.c
@@ -666,7 +666,7 @@
 {
     isn_T	*isn;
 
-    if ((isn = generate_instr_type(cctx, ISN_PUSHCHANNEL, &t_channel)) == NULL)
+    if ((isn = generate_instr_type(cctx, ISN_PUSHJOB, &t_channel)) == NULL)
 	return FAIL;
     isn->isn_arg.job = job;
 
diff --git a/src/vim9execute.c b/src/vim9execute.c
index be19b1f..094ee72 100644
--- a/src/vim9execute.c
+++ b/src/vim9execute.c
@@ -1915,7 +1915,7 @@
 		    tv.v_type = VAR_JOB;
 		    tv.vval.v_job = iptr->isn_arg.job;
 		    name = tv_get_string(&tv);
-		    smsg("%4d PUSHJOB %s", current, name);
+		    smsg("%4d PUSHJOB \"%s\"", current, name);
 		}
 #endif
 		break;
