diff --git a/src/testdir/test_vim9_disassemble.vim b/src/testdir/test_vim9_disassemble.vim
index f09cb1d..9d2f697 100644
--- a/src/testdir/test_vim9_disassemble.vim
+++ b/src/testdir/test_vim9_disassemble.vim
@@ -117,7 +117,7 @@
         '\d 2STRING stack\[-1\]\_s*' ..
         '\d\+ PUSHS ".txt"\_s*' ..
         '\d\+ EXECCONCAT 4\_s*' ..
-        '\d\+ RETURN 0',
+        '\d\+ RETURN void',
         res)
 enddef
 
@@ -133,7 +133,7 @@
     assert_match('<SNR>\d*_PyHeredoc.*' ..
           "    python3 << EOF^@      print('hello')^@EOF\\_s*" ..
           '\d EXEC_SPLIT     python3 << EOF^@      print(''hello'')^@EOF\_s*' ..
-          '\d RETURN 0',
+          '\d RETURN void',
           res)
   enddef
 endif
@@ -153,7 +153,7 @@
         '\d SUBSTITUTE   :%s/a/\\=expr/&g#c\_s*' ..
         '    0 LOAD $0\_s*' ..
         '    -------------\_s*' ..
-        '\d RETURN 0',
+        '\d RETURN void',
         res)
 enddef
 
@@ -181,7 +181,7 @@
         ' -------------\_s*' ..
         '\d BCALL searchpair(argc 5)\_s*' ..
         '\d DROP\_s*' ..
-        '\d RETURN 0',
+        '\d RETURN void',
         res)
 enddef
 
@@ -209,7 +209,7 @@
         '\d REDIR END\_s*' ..
         '\d CONCAT\_s*' ..
         '\d STORE $0\_s*' ..
-        '\d RETURN 0',
+        '\d RETURN void',
         res)
 enddef
 
@@ -228,7 +228,7 @@
         '\d CEXPR pre cexpr\_s*' ..
         '\d LOAD $0\_s*' ..
         '\d CEXPR core cexpr "cexpr errors"\_s*' ..
-        '\d RETURN 0',
+        '\d RETURN void',
         res)
 enddef
 
@@ -244,7 +244,7 @@
         '\d EXEC   norm! m\[jjm\]\_s*' ..
         '  :''\[,''\]yank\_s*' ..
         '\d EXEC   :''\[,''\]yank\_s*' ..
-        '\d RETURN 0',
+        '\d RETURN void',
         res)
 enddef
 
@@ -258,7 +258,7 @@
         ' :3put ="text"\_s*' ..
         '\d PUSHS "text"\_s*' ..
         '\d PUT = 3\_s*' ..
-        '\d RETURN 0',
+        '\d RETURN void',
         res)
 enddef
 
@@ -272,7 +272,7 @@
         ' :$-2put a\_s*' ..
         '\d RANGE $-2\_s*' ..
         '\d PUT a range\_s*' ..
-        '\d RETURN 0',
+        '\d RETURN void',
         res)
 enddef
 
@@ -390,7 +390,7 @@
         '\d\+ PUSHNR 1\_s*' ..
         '\d\+ LOAD $2\_s*' ..
         '\d\+ STOREINDEX blob\_s*' ..
-        '\d\+ RETURN 0',
+        '\d\+ RETURN void',
         res)
 enddef
 
@@ -413,7 +413,7 @@
         '\d LOAD $0\_s*' ..
         '\d MEMBER dd\_s*' ..
         '\d STOREINDEX any\_s*' ..
-        '\d\+ RETURN 0',
+        '\d\+ RETURN void',
         res)
 enddef
 
@@ -448,7 +448,7 @@
         '\d\+ STORE $1\_s*' ..
         '\d\+ SLICE 2\_s*' ..
         '\d\+ STORE $2\_s*' ..
-        '\d\+ RETURN 0',
+        '\d\+ RETURN void',
         res)
 enddef
 
@@ -476,7 +476,7 @@
         '\d\+ CHECKTYPE number stack\[-1\]\_s*' ..
         '\d\+ LISTAPPEND\_s*' ..
         '\d\+ DROP\_s*' ..
-        '\d\+ RETURN 0',
+        '\d\+ RETURN void',
         res)
 enddef
 
@@ -503,7 +503,7 @@
         '\d\+ CHECKTYPE number stack\[-1\]\_s*' ..
         '\d\+ BLOBAPPEND\_s*' ..
         '\d\+ DROP\_s*' ..
-        '\d\+ RETURN 0',
+        '\d\+ RETURN void',
         res)
 enddef
 
@@ -530,7 +530,7 @@
         '\d\+ PUSHNR 2\_s*' ..
         '\d\+ BLOBSLICE\_s*' ..
         '\d\+ ECHO 1\_s*' ..
-        '\d\+ RETURN 0',
+        '\d\+ RETURN void',
         res)
 enddef
 
@@ -720,7 +720,7 @@
         '\d LOAD arg\[-1\]\_s*' ..
         '\d CONCAT\_s*' ..
         '\d STOREOUTER level 1 $0\_s*' ..
-        '\d RETURN 0',
+        '\d RETURN void',
         res)
 
   res = execute('disass g:Get')
@@ -754,7 +754,7 @@
         '\d PCALL top (argc 1)\_s*' ..
         '\d PCALL end\_s*' ..
         '\d DROP\_s*' ..
-        '\d RETURN 0',
+        '\d RETURN void',
         res)
 enddef
 
@@ -1012,7 +1012,7 @@
         '\d PUSHS "UserFunc"\_s*' ..
         '\d BCALL funcref(argc 1)\_s*' ..
         '\d STORE $2\_s*' ..
-        '\d RETURN 0',
+        '\d RETURN void',
         instr)
 enddef
 
@@ -1039,7 +1039,7 @@
         'var chan1: channel\_s*' ..
         '\d PUSHCHANNEL 0\_s*' ..
         '\d STORE $2\_s*' ..
-        '\d RETURN 0',
+        '\d RETURN void',
         instr)
 enddef
 
@@ -1111,7 +1111,7 @@
         'echomsg "inner"\_s*' ..
         'enddef\_s*' ..
         '\d NEWFUNC <lambda>\d\+ Inner\_s*' ..
-        '\d RETURN 0',
+        '\d RETURN void',
         instr)
 enddef
 
@@ -1133,7 +1133,7 @@
         '\d DEF /Info\_s*' ..
         'def /Info/\_s*' ..
         '\d DEF /Info/\_s*' ..
-        '\d RETURN 0',
+        '\d RETURN void',
         instr)
 enddef
 
@@ -1264,7 +1264,7 @@
         'endfor\_s*' ..
         '\d\+ JUMP -> 8\_s*' ..
         '\d\+ DROP\_s*' ..
-        '\d\+ RETURN 0',
+        '\d\+ RETURN void',
         instr)
 enddef
 
@@ -1321,7 +1321,7 @@
         'endfor\_s*' ..
         '21 JUMP -> 4\_s*' ..
         '\d\+ DROP\_s*' ..
-        '\d\+ RETURN 0',
+        '\d\+ RETURN void',
         instr)
 enddef
 
@@ -1341,7 +1341,7 @@
         '\d NEWLIST size 2\_s*' ..
         '\d SETTYPE list<number>\_s*' ..
         '\d STORE $0\_s*' ..
-        '\d RETURN 0\_s*',
+        '\d RETURN void\_s*',
         instr)
 enddef
 
@@ -1828,7 +1828,7 @@
       'echo "" ?? "empty string"\_s*' ..
       '\d\+ PUSHS "empty string"\_s*' ..
       '\d\+ ECHO 1\_s*' ..
-      '\d\+ RETURN 0',
+      '\d\+ RETURN void',
       res)
 enddef
 
@@ -1855,7 +1855,7 @@
           'if ' .. substitute(case[0], '[[~]', '\\\0', 'g') .. '.*' ..
           '\d PUSHNR 42.*' ..
           '\d ECHO 1.*' ..
-          '\d RETURN 0',
+          '\d RETURN void',
           instr)
     else
       # condition false, function just returns
@@ -1863,7 +1863,7 @@
           'if ' .. substitute(case[0], '[[~]', '\\\0', 'g') .. '[ \n]*' ..
           'echo 42[ \n]*' ..
           'endif[ \n]*' ..
-          '\d RETURN 0',
+          '\d RETURN void',
           instr)
     endif
 
@@ -1901,7 +1901,7 @@
         '\d\+ LOAD $1\_s*' ..
         '\d\+ CONCAT\_s*' ..
         '\d\+ EXECUTE 1\_s*' ..
-        '\d\+ RETURN 0',
+        '\d\+ RETURN void',
         res)
 enddef
 
@@ -1920,7 +1920,7 @@
         "echoerr 'went' .. 'wrong'\\_s*" ..
         '\d PUSHS "wentwrong"\_s*' ..
         '\d ECHOERR 1\_s*' ..
-        '\d RETURN 0',
+        '\d RETURN void',
         res)
 enddef
 
@@ -2029,7 +2029,7 @@
         '\d SHUFFLE 2 up 1\_s*' ..
         '\d BCALL append(argc 2)\_s*' ..
         '\d DROP\_s*' ..
-        '\d RETURN 0',
+        '\d RETURN void',
         res)
 enddef
 
@@ -2052,7 +2052,7 @@
         '\d PUSHS "error"\_s*' ..
         '\d ECHOERR 1\_s*' ..
         '\d CMDMOD_REV\_s*' ..
-        '\d\+ RETURN 0',
+        '\d\+ RETURN void',
         res)
 enddef
 
@@ -2081,7 +2081,7 @@
         '\d\+ CMDMOD_REV\_s*' ..
         '\d\+ JUMP_IF_FALSE -> \d\+\_s*' ..
         'endif\_s*' ..
-        '\d\+ RETURN 0',
+        '\d\+ RETURN void',
         res)
 enddef
 
@@ -2104,7 +2104,7 @@
         'endfor\_s*' ..
         '\d JUMP -> 5\_s*' ..
         '8 DROP\_s*' ..
-        '\d RETURN 0\_s*',
+        '\d RETURN void\_s*',
         res)
 enddef
 
@@ -2125,7 +2125,7 @@
 
         'endwhile\_s*' ..
         '\d JUMP -> 0\_s*' ..
-        '6 RETURN 0\_s*',
+        '6 RETURN void\_s*',
          res)
 enddef
 
diff --git a/src/testdir/test_vim9_expr.vim b/src/testdir/test_vim9_expr.vim
index 6b51bc7..d7fb1df 100644
--- a/src/testdir/test_vim9_expr.vim
+++ b/src/testdir/test_vim9_expr.vim
@@ -2967,6 +2967,20 @@
       assert_equal([1, 2, 3], sorted)
   END
   CheckDefAndScriptSuccess(lines)
+
+  lines =<< trim END
+    def RetVoid()
+    enddef
+    RetVoid()->byte2line()
+  END
+  CheckDefExecAndScriptFailure(lines, 'E1031:')
+
+  lines =<< trim END
+    def RetVoid()
+    enddef
+    RetVoid()->byteidx(3)
+  END
+  CheckDefExecAndScriptFailure(lines, 'E1031:')
 enddef
 
 
