From 4365a45d681b4e71e3c39148489bb8eae538ccf7 Mon Sep 17 00:00:00 2001 From: Roberto Ierusalimschy Date: Tue, 6 May 2025 15:54:05 -0300 Subject: Checks for read-only globals --- testes/locals.lua | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'testes') diff --git a/testes/locals.lua b/testes/locals.lua index eeeb4338..421595bb 100644 --- a/testes/locals.lua +++ b/testes/locals.lua @@ -178,6 +178,8 @@ A = nil do -- constants + global assert, load, string, X + X = 1 -- not a constant local a, b, c = 10, 20, 30 b = a + c + b -- 'b' is not constant assert(a == 10 and b == 60 and c == 30) @@ -191,6 +193,9 @@ do -- constants checkro("z", "local x , y, z = 10, 20, 30; y = 10; z = 11") checkro("foo", "local foo = 10; function foo() end") checkro("foo", "local foo = {}; function foo() end") + checkro("foo", "global foo ; function foo() end") + checkro("XX", "global XX ; XX = 10") + checkro("XX", "local _ENV; global XX ; XX = 10") checkro("z", [[ local a, z , b = 10; @@ -201,6 +206,11 @@ do -- constants local a, var1 = 10; function foo() a = 20; z = function () var1 = 12; end end ]]) + + checkro("var1", [[ + global a, var1 , z; + local function foo() a = 20; z = function () var1 = 12; end end + ]]) end -- cgit v1.2.3-55-g6feb