2
0

bugs 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237
  1. ** lua.stx / llex.c
  2. Tue Dec 2 10:45:48 EDT 1997
  3. >> BUG: "lastline" was not reset on function entry, so debug information
  4. >> started only in the 2nd line of a function.
  5. =================================================================
  6. --- Version 3.1 alpha
  7. ** lua.c
  8. Thu Jan 15 14:34:58 EDT 1998
  9. >> must include "stdlib.h" (for "exit()").
  10. ** lbuiltin.c / lobject.h
  11. Thu Jan 15 14:34:58 EDT 1998
  12. >> MAX_WORD may be bigger than MAX_INT
  13. (by lhf)
  14. ** llex.c
  15. Mon Jan 19 18:17:18 EDT 1998
  16. >> wrong line number (+1) in error report when file starts with "#..."
  17. ** lstrlib.c
  18. Tue Jan 27 15:27:49 EDT 1998
  19. >> formats like "%020d" were considered too big (3 digits); moreover,
  20. >> some sistems limit printf to at most 500 chars, so we can limit sizes
  21. >> to 2 digits (99).
  22. ** lapi.c
  23. Tue Jan 27 17:12:36 EDT 1998
  24. >> "lua_getstring" may create a new string, so should check GC
  25. ** lstring.c / ltable.c
  26. Wed Jan 28 14:48:12 EDT 1998
  27. >> tables can become full of "empty" slots, and keep growing without limits.
  28. ** lstrlib.c
  29. Mon Mar 9 15:26:09 EST 1998
  30. >> gsub('a', '(b?)%1*' ...) loops (because the capture is empty).
  31. ** lstrlib.c
  32. Mon May 18 19:20:00 EST 1998
  33. >> arguments for "format" 'x', 'X', 'o' and 'u' must be unsigned int.
  34. =================================================================
  35. --- Version 3.1
  36. ** liolib.c / lauxlib.c
  37. Mon Sep 7 15:57:02 EST 1998
  38. >> function "luaL_argerror" prints wrong argument number (from a user's point
  39. of view) when functions have upvalues.
  40. ** lstrlib.c
  41. Tue Nov 10 17:29:36 EDT 1998
  42. >> gsub/strfind do not check whether captures are properly finished.
  43. (by roberto/tomas)
  44. ** lbuiltin.c
  45. Fri Dec 18 11:22:55 EDT 1998
  46. >> "tonumber" goes crazy with negative numbers in other bases (not 10),
  47. because "strtol" returns long, not unsigned long.
  48. (by Visual C++)
  49. ** lstrlib.c
  50. Mon Jan 4 10:41:40 EDT 1999
  51. >> "format" does not check size of format item (such as "%00000...00000d").
  52. ** lapi.c
  53. Wed Feb 3 14:40:21 EDT 1999
  54. >> getlocal cannot return the local itself, since lua_isstring and
  55. lua_isnumber can modify it.
  56. ** lstrlib.c
  57. Thu Feb 4 17:08:50 EDT 1999
  58. >> format "%s" may break limit of "sprintf" on some machines.
  59. (by Marcelo Sales)
  60. ** lzio.c
  61. Thu Mar 4 11:49:37 EST 1999
  62. >> file stream cannot call fread after EOF.
  63. (by lhf)
  64. =================================================================
  65. --- Version 3.2 (beta)
  66. ** lstrlib.c
  67. Fri Apr 30 11:10:20 EST 1999
  68. >> '$' at end of pattern was matching regular '$', too.
  69. (by anna; since 2.5)
  70. ** lbuiltin.c
  71. Fri May 21 17:15:11 EST 1999
  72. >> foreach, foreachi, foreachvar points to function in stack when stack
  73. can be reallocated.
  74. (by tomas; since 3.2 beta)
  75. ** lparser.c
  76. Wed Jun 16 10:32:46 EST 1999
  77. >> cannot assign to unlimited variables, because it causes overflow in
  78. the number of returns of a function.
  79. (since 3.1)
  80. =================================================================
  81. --- Version 3.2
  82. ** lmathlib.c
  83. Wed Aug 18 11:28:38 EST 1999
  84. >> random(0) and random(x,0) are wrong (0 is read as no argument!).
  85. (by Dave Bollinger; since 3.1)
  86. ** lparser.c
  87. Thu Sep 2 10:07:20 EST 1999
  88. >> in the (old) expression << ls->fs->f->consts[checkname(ls)] >>, checkname
  89. could realloc f->consts.
  90. (by Supratik Champati; since 3.2 beta)
  91. ** lobject.c / lbuiltin.c
  92. Wed Sep 8 17:41:54 EST 1999
  93. >> tonumber'e1' and tonumber(' ', x), for x!=10, gave 0 instead of nil.
  94. (since 3.1)
  95. ** lstrlib.c
  96. Thu Nov 11 14:36:30 EDT 1999
  97. >> `strfind' does not handle \0 in plain search.
  98. (by Jon Kleiser; since 3.1)
  99. ** lparser.c
  100. Wed Dec 29 16:05:43 EDT 1999
  101. >> return gives wrong line in debug information
  102. (by lhf; since 3.2 [at least])
  103. ** ldo.c
  104. Thu Dec 30 16:39:33 EDT 1999
  105. >> cannot reopen stdin (for binary mode)
  106. (by lhf & roberto; since 3.1)
  107. ** lapi.c
  108. Thu Mar 2 09:41:53 EST 2000
  109. >> lua_settable should check stack space (it could call a T.M.)
  110. (by lhf & celes; since 3.2; it was already fixed by fixed stack)
  111. ** lparser.c
  112. Mon Apr 3 09:59:06 EST 2000
  113. >> '%' should be in expfollow
  114. (by Edgar Toernig; since 3.1; it was already fixed)
  115. ** lbuiltin.c
  116. Mon Apr 3 10:05:05 EST 2000
  117. >> tostring() without arguments gives seg. fault.
  118. (by Edgar Toernig; since 3.0)
  119. =================================================================
  120. --- Version 4.0 alpha
  121. Tested with full test suites (as locked in Mon Apr 24 14:23:11 EST 2000)
  122. in the following platforms:
  123. * Linux - gcc, g++
  124. * AIX - gcc
  125. * Solaris - gcc, cc
  126. * IRIX - cc, cc-purify
  127. * Windows - Visual C++ (.c e .cpp, warning level=4)
  128. ** lstrlib.c
  129. Tue May 2 15:27:58 EST 2000
  130. >> `strfind' gets wrong subject length when there is an offset
  131. (by Jon Kleiser; since 4.0a)
  132. ** lparser.c
  133. Fri May 12 15:11:12 EST 2000
  134. >> first element in a list constructor is not adjusted to one value
  135. >> (e.g. «a = {gsub('a','a','')}»)
  136. (by Tomas; since 4.0a)
  137. ** lparser.c
  138. Wed May 24 14:50:16 EST 2000
  139. >> record-constructor starting with an upvalue name gets an error
  140. >> (e.g. «local a; function f() x = {a=1} end»)
  141. (by Edgar Toernig; since 3.1)
  142. ** lparser.c
  143. Tue Aug 29 15:56:05 EST 2000
  144. >> error message for `for' uses `while'
  145. (since 4.0a; already corrected)
  146. ** lgc.c
  147. Tue Aug 29 15:57:41 EST 2000
  148. >> gc tag method for nil could call line hook
  149. (by ry; since ?)
  150. =================================================================
  151. --- Version 4.0 Beta
  152. ** liolib.c
  153. Fri Sep 22 15:12:37 EST 2000
  154. >> `read("*w")' should return nil at EOF
  155. (by roberto; since 4.0b)
  156. ** lvm.c
  157. Mon Sep 25 11:47:48 EST 2000
  158. >> lua_gettable does not get key from stack top
  159. (by Philip Yi; since 4.0b)
  160. ** lgc.c
  161. Mon Sep 25 11:50:48 EST 2000
  162. >> GC may crash when checking locked C closures
  163. (by Philip Yi; since 4.0b)
  164. ** lapi.c
  165. Wed Sep 27 09:50:19 EST 2000
  166. >> lua_tag should return LUA_NOTAG for non-valid indices
  167. (by Paul Hankin; since 4.0b)
  168. ** llex.h / llex.c / lparser.c
  169. Wed Sep 27 13:39:45 EST 2000
  170. >> parser overwrites semantic information when looking ahead
  171. >> (e.g. «a = {print'foo'}»)
  172. (by Edgar Toernig; since 4.0b, deriving from previous bug)
  173. ** liolib.c
  174. Thu Oct 26 10:50:46 EDT 2000
  175. >> in function `read_file', realloc() doesn't free the buffer if it can't
  176. >> allocate new memory
  177. (by Mauro Vezzosi; since 4.0b)