patch 8.2.2389: test failure on a few systems

Problem:    Test failure on a few systems.
Solution:   Avoid that "char" value is negative.
diff --git a/src/vim9compile.c b/src/vim9compile.c
index ead971f..2fad4ac 100644
--- a/src/vim9compile.c
+++ b/src/vim9compile.c
@@ -826,7 +826,9 @@
     if ((isn = generate_instr(cctx, ISN_CHECKTYPE)) == NULL)
 	return FAIL;
     isn->isn_arg.type.ct_type = alloc_type(expected);
-    isn->isn_arg.type.ct_off = offset;
+    // Use the negated offset so that it's always positive.  Some systems don't
+    // support negative numbers for "char".
+    isn->isn_arg.type.ct_off = (char)-offset;
     isn->isn_arg.type.ct_arg_idx = argidx;
 
     // type becomes expected