summaryrefslogtreecommitdiff
path: root/testes/files.lua
diff options
context:
space:
mode:
authorRoberto Ierusalimschy <roberto@inf.puc-rio.br>2019-07-10 14:58:31 -0300
committerRoberto Ierusalimschy <roberto@inf.puc-rio.br>2019-07-10 14:58:31 -0300
commitbe8445d7e4b6122620c428877b51a27d464253d5 (patch)
treee0160895d105e5a3c20ec65c3196bffa042bd93f /testes/files.lua
parent3d296304ef14ac9a6d1fa9357541ddd9bb54722f (diff)
downloadlua-github-be8445d7e4b6122620c428877b51a27d464253d5.tar.gz
Details
In the generic for loop, it is simpler for OP_TFORLOOP to use the same 'ra' as OP_TFORCALL. Moreover, the internal names of the loop temporaries "(for ...)" don't need to leak internal details (even because the numerical for loop doesn't have a fixed role for each of its temporaries).
Diffstat (limited to 'testes/files.lua')
-rw-r--r--testes/files.lua8
1 files changed, 5 insertions, 3 deletions
diff --git a/testes/files.lua b/testes/files.lua
index 54931c14..c8f23d18 100644
--- a/testes/files.lua
+++ b/testes/files.lua
@@ -427,10 +427,12 @@ do -- testing closing file in line iteration
-- get the to-be-closed variable from a loop
local function gettoclose (lv)
lv = lv + 1
- for i = 1, math.maxinteger do
+ local stvar = 0 -- to-be-closed is 4th state variable in the loop
+ for i = 1, 1000 do
local n, v = debug.getlocal(lv, i)
- if n == "(for toclose)" then
- return v
+ if n == "(for state)" then
+ stvar = stvar + 1
+ if stvar == 4 then return v end
end
end
end