Import Upstream version 20180207
[hcoop/debian/mlton.git] / doc / guide / src / Bugs20070826.adoc
1 Bugs20070826
2 ============
3
4 Here are the known bugs in <:Release20070826:MLton 20070826>, listed
5 in reverse chronological order of date reported.
6
7 * <!Anchor(bug25)>
8 Bug in the mark-compact garbage collector where the C library's `memcpy` was used to move objects during the compaction phase; this could lead to heap corruption and segmentation faults with newer versions of gcc and/or glibc, which assume that src and dst in a `memcpy` do not overlap.
9 +
10 Fixed by revision <!ViewSVNRev(7461)>.
11
12 * <!Anchor(bug24)>
13 Bug in elaboration of `datatype` declarations with `withtype` bindings.
14 +
15 Fixed by revision <!ViewSVNRev(7434)>.
16
17 * <!Anchor(bug23)>
18 Performance bug in <:RefFlatten:> optimization pass.
19 +
20 Thanks to Reactive Systems for the bug report.
21 +
22 Fixed by revision <!ViewSVNRev(7379)>.
23
24 * <!Anchor(bug22)>
25 Performance bug in <:SimplifyTypes:> optimization pass.
26 +
27 Thanks to Reactive Systems for the bug report.
28 +
29 Fixed by revisions <!ViewSVNRev(7377)> and <!ViewSVNRev(7378)>.
30
31 * <!Anchor(bug21)>
32 Bug in amd64 codegen register allocation of indirect C calls.
33 +
34 Thanks to David Hansel for the bug report.
35 +
36 Fixed by revision <!ViewSVNRev(7368)>.
37
38 * <!Anchor(bug20)>
39 Bug in `IntInf.scan` and `IntInf.fromString` where leading spaces were only accepted if the stream had an explicit sign character.
40 +
41 Thanks to David Hansel for the bug report.
42 +
43 Fixed by revisions <!ViewSVNRev(7227)> and <!ViewSVNRev(7230)>.
44
45 * <!Anchor(bug19)>
46 Bug in `IntInf.~>>` that could cause a `glibc` assertion.
47 +
48 Fixed by revisions <!ViewSVNRev(7083)>, <!ViewSVNRev(7084)>, and <!ViewSVNRev(7085)>.
49
50 * <!Anchor(bug18)>
51 Bug in the return type of `MLton.Process.reap`.
52 +
53 Thanks to Risto Saarelma for the bug report.
54 +
55 Fixed by revision <!ViewSVNRev(7029)>.
56
57 * <!Anchor(bug17)>
58 Bug in `MLton.size` and `MLton.share` when tracing the current stack.
59 +
60 Fixed by revisions <!ViewSVNRev(6978)>, <!ViewSVNRev(6981)>, <!ViewSVNRev(6988)>, <!ViewSVNRev(6989)>, and <!ViewSVNRev(6990)>.
61
62 * <!Anchor(bug16)>
63 Bug in nested `_export`/`_import` functions.
64 +
65 Fixed by revision <!ViewSVNRev(6919)>.
66
67 * <!Anchor(bug15)>
68 Bug in the name mangling of `_import`-ed functions with the `stdcall` convention.
69 +
70 Thanks to Lars Bergstrom for the bug report.
71 +
72 Fixed by revision <!ViewSVNRev(6672)>.
73
74 * <!Anchor(bug14)>
75 Bug in Windows code to page the heap to disk when unable to grow the heap to a desired size.
76 +
77 Thanks to Sami Evangelista for the bug report.
78 +
79 Fixed by revisions <!ViewSVNRev(6600)> and <!ViewSVNRev(6624)>.
80
81 * <!Anchor(bug13)>
82 Bug in \*NIX code to page the heap to disk when unable to grow the heap to a desired size.
83 +
84 Thanks to Nicolas Bertolotti for the bug report and patch.
85 +
86 Fixed by revisions <!ViewSVNRev(6596)> and <!ViewSVNRev(6600)>.
87
88 * <!Anchor(bug12)>
89 Space-safety bug in pass to <:RefFlatten: flatten refs> into containing data structure.
90 +
91 Thanks to Daniel Spoonhower for the bug report and initial diagnosis and patch.
92 +
93 Fixed by revision <!ViewSVNRev(6395)>.
94
95 * <!Anchor(bug11)>
96 Bug in the frontend that rejected `op longvid` patterns and expressions.
97 +
98 Thanks to Florian Weimer for the bug report.
99 +
100 Fixed by revision <!ViewSVNRev(6347)>.
101
102 * <!Anchor(bug10)>
103 Bug in the http://www.standardml.org/Basis/imperative-io.html#SIG:IMPERATIVE_IO.canInput:VAL[`IMPERATIVE_IO.canInput`] function of the <:BasisLibrary:Basis Library> implementation.
104 +
105 Thanks to Ville Laurikari for the bug report.
106 +
107 Fixed by revision <!ViewSVNRev(6261)>.
108
109 * <!Anchor(bug09)>
110 Bug in algebraic simplification of real primitives. http://www.standardml.org/Basis/real.html#SIG:REAL.\|@LTE\|:VAL[++REAL__<N>__.\<=(x, x)++] is `false` when `x` is NaN.
111 +
112 Fixed by revision <!ViewSVNRev(6242)>.
113
114 * <!Anchor(bug08)>
115 Bug in the FFI visible representation of `Int16.int ref` (and references of other primitive types smaller than 32-bits) on big-endian platforms.
116 +
117 Thanks to Dave Herman for the bug report.
118 +
119 Fixed by revision <!ViewSVNRev(6267)>.
120
121 * <!Anchor(bug07)>
122 Bug in type inference of flexible records. This would later cause the compiler to raise the `TypeError` exception.
123 +
124 Thanks to Wesley Terpstra for the bug report.
125 +
126 Fixed by revision <!ViewSVNRev(6229)>.
127
128 * <!Anchor(bug06)>
129 Bug in cross-compilation of `gdtoa` library.
130 +
131 Thanks to Wesley Terpstra for the bug report and patch.
132 +
133 Fixed by revision <!ViewSVNRev(6620)>.
134
135 * <!Anchor(bug05)>
136 Bug in pass to <:RefFlatten: flatten refs> into containing data structure.
137 +
138 Thanks to Ruy Ley-Wild for the bug report.
139 +
140 Fixed by revision <!ViewSVNRev(6191)>.
141
142 * <!Anchor(bug04)>
143 Bug in the handling of weak pointers by the mark-compact garbage collector.
144 +
145 Thanks to Sean McLaughlin for the bug report and Florian Weimer for the initial diagnosis.
146 +
147 Fixed by revision <!ViewSVNRev(6183)>.
148
149 * <!Anchor(bug03)>
150 Bug in the elaboration of structures with signature constraints. This would later cause the compiler to raise the `TypeError` exception.
151 +
152 Thanks to Vesa Karvonen for the bug report.
153 +
154 Fixed by revision <!ViewSVNRev(6046)>.
155
156 * <!Anchor(bug02)>
157 Bug in the interaction of `_export`-ed functions and signal handlers.
158 +
159 Thanks to Sean McLaughlin for the bug report.
160 +
161 Fixed by revision <!ViewSVNRev(6013)>.
162
163 * <!Anchor(bug01)>
164 Bug in the implementation of `_export`-ed functions using the `char` type, leading to a linker error.
165 +
166 Thanks to Katsuhiro Ueno for the bug report.
167 +
168 Fixed by revision <!ViewSVNRev(5999)>.