patch 8.2.2195: failing tests for :const

Problem:    Failing tests for :const.
Solution:   Add missing check for ASSIGN_FINAL.
diff --git a/src/eval.c b/src/eval.c
index f08ae57..e4149ab 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -1334,7 +1334,7 @@
 	{
 	    typval_T tv;
 
-	    if (flags & ASSIGN_CONST)
+	    if (flags & (ASSIGN_CONST | ASSIGN_FINAL))
 	    {
 		emsg(_(e_cannot_mod));
 		*endp = cc;
@@ -1372,7 +1372,7 @@
 	listitem_T *ll_li = lp->ll_li;
 	int	    ll_n1 = lp->ll_n1;
 
-	if (flags & ASSIGN_CONST)
+	if (flags & (ASSIGN_CONST | ASSIGN_FINAL))
 	{
 	    emsg(_("E996: Cannot lock a range"));
 	    return;
@@ -1431,7 +1431,7 @@
 	/*
 	 * Assign to a List or Dictionary item.
 	 */
-	if (flags & ASSIGN_CONST)
+	if (flags & (ASSIGN_CONST | ASSIGN_FINAL))
 	{
 	    emsg(_("E996: Cannot lock a list or dict"));
 	    return;
diff --git a/src/evalvars.c b/src/evalvars.c
index 7c4cc7a..e671b87 100644
--- a/src/evalvars.c
+++ b/src/evalvars.c
@@ -752,9 +752,6 @@
 	emsg(_(e_cannot_use_let_in_vim9_script));
 	return;
     }
-    if (eap->cmdidx == CMD_const && !vim9script && !eap->forceit)
-	// In legacy Vim script ":const" works like ":final".
-	eap->cmdidx = CMD_final;
 
     if (eap->cmdidx == CMD_const)
 	flags |= ASSIGN_CONST;
@@ -3231,7 +3228,8 @@
 	init_tv(tv);
     }
 
-    // ":const var = val" locks the value
+    // ":const var = value" locks the value
+    // ":final var = value" locks "var"
     if (flags & ASSIGN_CONST)
 	// Like :lockvar! name: lock the value and what it contains, but only
 	// if the reference count is up to one.  That locks only literal
diff --git a/src/testdir/test_vim9_func.vim b/src/testdir/test_vim9_func.vim
index 749b8e8..bdced02 100644
--- a/src/testdir/test_vim9_func.vim
+++ b/src/testdir/test_vim9_func.vim
@@ -1032,7 +1032,7 @@
       call Change()
       unlet g:Aconst
   END
-  CheckScriptFailure(lines, 'E1122: Variable is locked: Aconst', 2)
+  CheckScriptFailure(lines, 'E741: Value is locked: Aconst', 2)
 enddef
 
 " Test that inside :function a Python function can be defined, :def is not
diff --git a/src/version.c b/src/version.c
index d4ca3c4..45b69bd 100644
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    2195,
+/**/
     2194,
 /**/
     2193,