patch 8.2.3299: Vim9: exists() does not handle much at compile time

Problem:    Vim9: exists() does not handle much at compile time.
Solution:   Handle variable names. (closes #8688)
diff --git a/src/vim9compile.c b/src/vim9compile.c
index d96724b..23f0a74 100644
--- a/src/vim9compile.c
+++ b/src/vim9compile.c
@@ -3417,8 +3417,8 @@
 	s = skipwhite(s);
 	if (*s == ')' && argvars[0].v_type == VAR_STRING
 	       && ((is_has && !dynamic_feature(argvars[0].vval.v_string))
-		    || (!is_has && (*argvars[0].vval.v_string == '+'
-			    || *argvars[0].vval.v_string == '&'))))
+		    || (!is_has && vim_strchr((char_u *)"+&:*",
+						  *argvars[0].vval.v_string))))
 	{
 	    typval_T	*tv = &ppconst->pp_tv[ppconst->pp_used];