patch 8.2.2692: Vim9: locked script variable can be changed

Problem:    Vim9: locked script variable can be changed.
Solution:   Check for locked value. (closes #8031)
diff --git a/src/vim9execute.c b/src/vim9execute.c
index 9b7f87b..69254be 100644
--- a/src/vim9execute.c
+++ b/src/vim9execute.c
@@ -1958,6 +1958,13 @@
 		    if (sv == NULL)
 			goto failed;
 		    --ectx.ec_stack.ga_len;
+
+		    // "const" and "final" are checked at compile time, locking
+		    // the value needs to be checked here.
+		    SOURCING_LNUM = iptr->isn_lnum;
+		    if (value_check_lock(sv->sv_tv->v_lock, sv->sv_name, FALSE))
+			goto on_error;
+
 		    clear_tv(sv->sv_tv);
 		    *sv->sv_tv = *STACK_TV_BOT(0);
 		}