diff --git a/src/testdir/test_vim9_assign.vim b/src/testdir/test_vim9_assign.vim
index 926773e..a6a242d 100644
--- a/src/testdir/test_vim9_assign.vim
+++ b/src/testdir/test_vim9_assign.vim
@@ -3323,4 +3323,30 @@
   v9.CheckSourceFailure(lines, 'E1012: Type mismatch; expected object<A> but got number', 1)
 enddef
 
+" Test for assigning different types of value to a variable of type "any"
+def Test_assign_to_any()
+  for [typestr, val] in [
+                          ["'bool'", 'true'],
+                          ["'number'", '100'],
+                          ["'float'", '1.1'],
+                          ["'string'", '"abc"'],
+                          ["'blob'", '0z10'],
+                          ["'list<number>'", '[1, 2, 3]'],
+                          ["'dict<number>'", '{a: 1}'],
+                        ]
+    var lines =<< trim eval END
+      vim9script
+      var x: any = {val}
+      assert_equal({typestr}, typename(x))
+      x = [{{a: 1}}, {{b: 2}}]
+      assert_equal('list<dict<number>>', typename(x))
+      def Foo(xarg: any, s: string)
+        assert_equal(s, typename(xarg))
+      enddef
+      Foo({val}, {typestr})
+    END
+    v9.CheckSourceSuccess(lines)
+  endfor
+enddef
+
 " vim: ts=8 sw=2 sts=2 expandtab tw=80 fdm=marker
diff --git a/src/version.c b/src/version.c
index f623c7f..6b8a8b1 100644
--- a/src/version.c
+++ b/src/version.c
@@ -705,6 +705,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    2155,
+/**/
     2154,
 /**/
     2153,
diff --git a/src/vim9type.c b/src/vim9type.c
index 22720fb..c28137f 100644
--- a/src/vim9type.c
+++ b/src/vim9type.c
@@ -201,6 +201,10 @@
     void
 set_tv_type(typval_T *tv, type_T *type)
 {
+    if (type->tt_type == VAR_ANY)
+	// If the variable type is "any", then keep the value type.
+	// e.g.  var x: any = [1, 2] or var y: any = {v: 1}
+	return;
     if (tv->v_type == VAR_DICT && tv->vval.v_dict != NULL)
     {
 	dict_T *d = tv->vval.v_dict;
