diff --git a/src/evalvars.c b/src/evalvars.c
index 1b3d1f6..a171c82 100644
--- a/src/evalvars.c
+++ b/src/evalvars.c
@@ -2565,6 +2565,7 @@
     typval_T	*tv = NULL;
     int		found = FALSE;
     dictitem_T	*v;
+    hashtab_T	*ht = NULL;
     int		cc;
 
     // truncate the name, so that we can use strcmp()
@@ -2575,7 +2576,7 @@
     if ((tv = lookup_debug_var(name)) == NULL)
     {
 	// Check for user-defined variables.
-	v = find_var(name, NULL, flags & EVAL_VAR_NOAUTOLOAD);
+	v = find_var(name, &ht, flags & EVAL_VAR_NOAUTOLOAD);
 	if (v != NULL)
 	{
 	    tv = &v->di_tv;
@@ -2655,18 +2656,35 @@
 	}
 	else if (rettv != NULL)
 	{
+	    type_T	*type = NULL;
+
+	    if (ht != NULL && ht == get_script_local_ht())
+	    {
+		svar_T *sv = find_typval_in_script(tv, FALSE);
+
+		// TODO: check imported variable
+		if (sv != NULL)
+		    type = sv->sv_type;
+	    }
+
 	    // If a list or dict variable wasn't initialized, do it now.
 	    if (tv->v_type == VAR_DICT && tv->vval.v_dict == NULL)
 	    {
 		tv->vval.v_dict = dict_alloc();
 		if (tv->vval.v_dict != NULL)
+		{
 		    ++tv->vval.v_dict->dv_refcount;
+		    tv->vval.v_dict->dv_type = alloc_type(type);
+		}
 	    }
 	    else if (tv->v_type == VAR_LIST && tv->vval.v_list == NULL)
 	    {
 		tv->vval.v_list = list_alloc();
 		if (tv->vval.v_list != NULL)
+		{
 		    ++tv->vval.v_list->lv_refcount;
+		    tv->vval.v_list->lv_type = alloc_type(type);
+		}
 	    }
 	    else if (tv->v_type == VAR_BLOB && tv->vval.v_blob == NULL)
 	    {
