patch 8.2.4846: termcodes test fails

Problem:    Termcodes test fails.
Solution:   use CTRL-SHIFT-V to insert an unsimplified key. (closes #10316)
diff --git a/src/edit.c b/src/edit.c
index 3790bfb..61c1694 100644
--- a/src/edit.c
+++ b/src/edit.c
@@ -1899,7 +1899,11 @@
      * vi-compatible (maybe there should be an option for it?) -- webb
      */
     if (gui.in_use)
+    {
 	++allow_keys;
+	if (noReduceKeys)
+	    ++no_reduce_keys;
+    }
 #endif
 #ifdef USE_ON_FLY_SCROLL
     dont_scroll = TRUE;		// disallow scrolling here
@@ -1992,7 +1996,11 @@
     --no_mapping;
 #ifdef FEAT_GUI
     if (gui.in_use)
+    {
 	--allow_keys;
+	if (noReduceKeys)
+	    --no_reduce_keys;
+    }
 #endif
     if (nc)
     {
diff --git a/src/getchar.c b/src/getchar.c
index 6d8697c..2b1bbde 100644
--- a/src/getchar.c
+++ b/src/getchar.c
@@ -1634,7 +1634,7 @@
 {
     int c = c_arg;
 
-    if ((*modifiers & MOD_MASK_CTRL) && !(*modifiers & MOD_MASK_SHIFT))
+    if (*modifiers & MOD_MASK_CTRL)
     {
 	if ((c >= '`' && c <= 0x7f) || (c >= '@' && c <= '_'))
 	{
diff --git a/src/testdir/test_gui.vim b/src/testdir/test_gui.vim
index 96723b6..993954b 100644
--- a/src/testdir/test_gui.vim
+++ b/src/testdir/test_gui.vim
@@ -1560,8 +1560,8 @@
   bw!
 endfunc
 
-func Test_gui_CTRL_V()
-  call feedkeys(":let g:str = '\<C-V>\<*C-S-I>\<C-V>\<*C-S-@>'\<CR>", 'tx')
+func Test_gui_CTRL_SHIFT_V()
+  call feedkeys(":let g:str = '\<*C-S-V>\<*C-S-I>\<*C-S-V>\<*C-S-@>'\<CR>", 'tx')
   call assert_equal('<C-S-I><C-S-@>', g:str)
   unlet g:str
 endfunc
diff --git a/src/version.c b/src/version.c
index dc2c1ff..eddc6c9 100644
--- a/src/version.c
+++ b/src/version.c
@@ -747,6 +747,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    4846,
+/**/
     4845,
 /**/
     4844,