patch 8.2.1183: assert_fails() checks the last error message

Problem:    assert_fails() checks the last error message.
Solution:   Check the first error, it is more relevant.  Fix all the tests
            that rely on the old behavior.
diff --git a/src/testdir/test_match.vim b/src/testdir/test_match.vim
index e34c9f2..869ad6c 100644
--- a/src/testdir/test_match.vim
+++ b/src/testdir/test_match.vim
@@ -160,7 +160,7 @@
 
 func Test_matchadd_error()
   call assert_fails("call matchadd('GroupDoesNotExist', 'X')", 'E28:')
-  call assert_fails("call matchadd('Search', '\\(')", 'E475:')
+  call assert_fails("call matchadd('Search', '\\(')", 'E54:')
   call assert_fails("call matchadd('Search', 'XXX', 1, 123, 1)", 'E715:')
   call assert_fails("call matchadd('Error', 'XXX', 1, 3)", 'E798:')
   call assert_fails("call matchadd('Error', 'XXX', 1, 0)", 'E799:')