patch 8.2.1506: Vim9: no error when using a number other than 0 or 1 as bool

Problem:    Vim9: no error when using a number other than 0 or 1 as bool.
Solution:   Check the number is 0 or 1.
diff --git a/src/typval.c b/src/typval.c
index 2203bc6..d1732f2 100644
--- a/src/typval.c
+++ b/src/typval.c
@@ -177,6 +177,12 @@
     switch (varp->v_type)
     {
 	case VAR_NUMBER:
+	    if (want_bool && varp->vval.v_number != 0
+						   && varp->vval.v_number != 1)
+	    {
+		semsg(_(e_using_number_as_bool_nr), varp->vval.v_number);
+		break;
+	    }
 	    return varp->vval.v_number;
 	case VAR_FLOAT:
 #ifdef FEAT_FLOAT
@@ -261,13 +267,12 @@
 
 /*
  * Get the boolean value of "varp".  This is like tv_get_number_chk(),
- * but in Vim9 script accepts Number and Bool.
+ * but in Vim9 script accepts Number (0 and 1) and Bool/Special.
  */
     varnumber_T
 tv_get_bool(typval_T *varp)
 {
     return tv_get_bool_or_number_chk(varp, NULL, TRUE);
-
 }
 
 /*