diff --git a/src/testdir/test_vim9_expr.vim b/src/testdir/test_vim9_expr.vim
index 8f691e6..656718c 100644
--- a/src/testdir/test_vim9_expr.vim
+++ b/src/testdir/test_vim9_expr.vim
@@ -1749,6 +1749,15 @@
     var l: list<string> = [234, 'x']
   END
   CheckScriptFailure(lines, 'E1012:', 2)
+
+  lines =<< trim END
+      vim9script
+      def Failing()
+        job_stop()
+      enddef
+      var list = [Failing]
+  END
+  CheckScriptFailure(lines, 'E119:', 1)
 enddef
 
 def LambdaWithComments(): func
@@ -2009,6 +2018,15 @@
     var l: dict<string> = #{a: 234, b: 'x'}
   END
   CheckScriptFailure(lines, 'E1012:', 2)
+
+  lines =<< trim END
+      vim9script
+      def Failing()
+        job_stop()
+      enddef
+      var dict = #{name: Failing}
+  END
+  CheckScriptFailure(lines, 'E119:', 1)
 enddef
 
 let g:oneString = 'one'
diff --git a/src/version.c b/src/version.c
index 112077a..150bfd2 100644
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1950,
+/**/
     1949,
 /**/
     1948,
diff --git a/src/vim9type.c b/src/vim9type.c
index b50f5f1..27daf83 100644
--- a/src/vim9type.c
+++ b/src/vim9type.c
@@ -108,7 +108,7 @@
     type_T *type;
 
     // recognize commonly used types
-    if (member_type->tt_type == VAR_ANY)
+    if (member_type == NULL || member_type->tt_type == VAR_ANY)
 	return &t_list_any;
     if (member_type->tt_type == VAR_VOID
 	    || member_type->tt_type == VAR_UNKNOWN)
@@ -137,7 +137,7 @@
     type_T *type;
 
     // recognize commonly used types
-    if (member_type->tt_type == VAR_ANY)
+    if (member_type == NULL || member_type->tt_type == VAR_ANY)
 	return &t_dict_any;
     if (member_type->tt_type == VAR_VOID
 	    || member_type->tt_type == VAR_UNKNOWN)
@@ -408,6 +408,7 @@
 
 /*
  * Return FAIL if "expected" and "actual" don't match.
+ * When "argidx" > 0 it is included in the error message.
  */
     int
 check_typval_type(type_T *expected, typval_T *actual_tv, int argidx)
