aboutsummaryrefslogtreecommitdiff
path: root/testes/gc.lua
diff options
context:
space:
mode:
Diffstat (limited to 'testes/gc.lua')
-rw-r--r--testes/gc.lua22
1 files changed, 7 insertions, 15 deletions
diff --git a/testes/gc.lua b/testes/gc.lua
index 6d24e0d8..9ea054c1 100644
--- a/testes/gc.lua
+++ b/testes/gc.lua
@@ -99,35 +99,28 @@ local function GC() GC1(); GC2() end
99do 99do
100 print("creating many objects") 100 print("creating many objects")
101 101
102 local contCreate = 0
103
104 local limit = 5000 102 local limit = 5000
105 103
106 while contCreate <= limit do 104 for i = 1, limit do
107 local a = {}; a = nil 105 local a = {}; a = nil
108 contCreate = contCreate+1
109 end 106 end
110 107
111 local a = "a" 108 local a = "a"
112 109
113 contCreate = 0 110 for i = 1, limit do
114 while contCreate <= limit do 111 a = i .. "b";
115 a = contCreate .. "b";
116 a = string.gsub(a, '(%d%d*)', "%1 %1") 112 a = string.gsub(a, '(%d%d*)', "%1 %1")
117 a = "a" 113 a = "a"
118 contCreate = contCreate+1
119 end 114 end
120 115
121 116
122 contCreate = 0
123 117
124 a = {} 118 a = {}
125 119
126 function a:test () 120 function a:test ()
127 while contCreate <= limit do 121 for i = 1, limit do
128 load(string.format("function temp(a) return 'a%d' end", contCreate), "")() 122 load(string.format("function temp(a) return 'a%d' end", i), "")()
129 assert(temp() == string.format('a%d', contCreate)) 123 assert(temp() == string.format('a%d', i))
130 contCreate = contCreate+1
131 end 124 end
132 end 125 end
133 126
@@ -166,9 +159,8 @@ print('long strings')
166x = "01234567890123456789012345678901234567890123456789012345678901234567890123456789" 159x = "01234567890123456789012345678901234567890123456789012345678901234567890123456789"
167assert(string.len(x)==80) 160assert(string.len(x)==80)
168s = '' 161s = ''
169n = 0
170k = math.min(300, (math.maxinteger // 80) // 2) 162k = math.min(300, (math.maxinteger // 80) // 2)
171while n < k do s = s..x; n=n+1; j=tostring(n) end 163for n = 1, k do s = s..x; j=tostring(n) end
172assert(string.len(s) == k*80) 164assert(string.len(s) == k*80)
173s = string.sub(s, 1, 10000) 165s = string.sub(s, 1, 10000)
174s, i = string.gsub(s, '(%d%d%d%d)', '') 166s, i = string.gsub(s, '(%d%d%d%d)', '')