patch 8.2.1657: Vim9: no proper error for nested ":def!"

Problem:    Vim9: no proper error for nested ":def!".
Solution:   Check for "!". (closes #6920)
diff --git a/src/vim9compile.c b/src/vim9compile.c
index 7199e85..43d994e 100644
--- a/src/vim9compile.c
+++ b/src/vim9compile.c
@@ -4320,6 +4320,12 @@
     ufunc_T	*ufunc;
     int		r;
 
+    if (*name_start == '!')
+    {
+	emsg(_(e_cannot_use_bang_with_nested_def));
+	return NULL;
+    }
+
     // Only g:Func() can use a namespace.
     if (name_start[1] == ':' && !is_global)
     {