about summary refs log tree commit diff stats
path: root/test/readonly.lua
diff options
context:
space:
mode:
authorKartik K. Agaram <vc@akkartik.com>2021-10-19 21:38:48 -0700
committerKartik K. Agaram <vc@akkartik.com>2021-10-22 19:24:44 -0700
commit74f8cd15bb43110973deffdeb9dd229797e5b328 (patch)
tree12d6b5475a786eacf7a5a79b03b2b85621578ec6 /test/readonly.lua
downloadteliva-74f8cd15bb43110973deffdeb9dd229797e5b328.tar.gz
new fork of Lua 5.1
https://www.lua.org
Diffstat (limited to 'test/readonly.lua')
-rw-r--r--test/readonly.lua12
1 files changed, 12 insertions, 0 deletions
diff --git a/test/readonly.lua b/test/readonly.lua
new file mode 100644
index 0000000..85c0b4e
--- /dev/null
+++ b/test/readonly.lua
@@ -0,0 +1,12 @@
+-- make global variables readonly
+
+local f=function (t,i) error("cannot redefine global variable `"..i.."'",2) end
+local g={}
+local G=getfenv()
+setmetatable(g,{__index=G,__newindex=f})
+setfenv(1,g)
+
+-- an example
+rawset(g,"x",3)
+x=2
+y=1	-- cannot redefine `y'