Mercurial > projects > ldc
comparison runtime/llvmdc.diff @ 627:79cbe5034fec
Tango patch: xml document fixes and symbol visibility in gc
author | Christian Kamm <kamm incasoftware de> |
---|---|
date | Wed, 01 Oct 2008 19:19:26 +0200 |
parents | c60e122f4ada |
children | 9fb1f559d9e9 |
comparison
equal
deleted
inserted
replaced
626:e83ba4ae4878 | 627:79cbe5034fec |
---|---|
135 popad; | 135 popad; |
136 Index: lib/gc/basic/gcx.d | 136 Index: lib/gc/basic/gcx.d |
137 =================================================================== | 137 =================================================================== |
138 --- lib/gc/basic/gcx.d (revision 3939) | 138 --- lib/gc/basic/gcx.d (revision 3939) |
139 +++ lib/gc/basic/gcx.d (working copy) | 139 +++ lib/gc/basic/gcx.d (working copy) |
140 @@ -65,6 +65,13 @@ | |
141 } | |
142 | |
143 | |
144 +struct BlkInfo | |
145 +{ | |
146 + void* base; | |
147 + size_t size; | |
148 + uint attr; | |
149 +} | |
150 + | |
151 private | |
152 { | |
153 enum BlkAttr : uint | |
154 @@ -75,13 +82,6 @@ | |
155 ALL_BITS = 0b1111_1111 | |
156 } | |
157 | |
158 - struct BlkInfo | |
159 - { | |
160 - void* base; | |
161 - size_t size; | |
162 - uint attr; | |
163 - } | |
164 - | |
165 extern (C) void* rt_stackBottom(); | |
166 extern (C) void* rt_stackTop(); | |
167 | |
140 @@ -2178,6 +2178,28 @@ | 168 @@ -2178,6 +2178,28 @@ |
141 __builtin_unwind_init(); | 169 __builtin_unwind_init(); |
142 sp = & sp; | 170 sp = & sp; |
143 } | 171 } |
144 + else version(LLVMDC) | 172 + else version(LLVMDC) |
227 + { | 255 + { |
228 + Arg[64] arglist = void; | 256 + Arg[64] arglist = void; |
229 int[64] intargs = void; | 257 int[64] intargs = void; |
230 byte[64] byteargs = void; | 258 byte[64] byteargs = void; |
231 long[64] longargs = void; | 259 long[64] longargs = void; |
260 Index: tango/text/xml/Document.d | |
261 =================================================================== | |
262 --- tango/text/xml/Document.d (revision 3939) | |
263 +++ tango/text/xml/Document.d (working copy) | |
264 @@ -1243,7 +1243,8 @@ | |
265 freeIndex = 0; | |
266 } | |
267 | |
268 - NodeSet set = {this}; | |
269 + NodeSet set; | |
270 + set.host = this; | |
271 auto mark = freeIndex; | |
272 allocate(root); | |
273 return set.assign (mark); | |
274 @@ -1273,7 +1274,8 @@ | |
275 | |
276 NodeSet dup () | |
277 { | |
278 - NodeSet copy = {host}; | |
279 + NodeSet copy; | |
280 + copy.host = host; | |
281 copy.nodes = nodes.dup; | |
282 return copy; | |
283 } | |
284 @@ -1337,7 +1339,7 @@ | |
285 | |
286 NodeSet nth (uint index) | |
287 { | |
288 - NodeSet set = {host}; | |
289 + NodeSet set; set.host = host; | |
290 auto mark = host.mark; | |
291 if (index < nodes.length) | |
292 host.allocate (nodes [index]); | |
293 @@ -1495,7 +1497,7 @@ | |
294 | |
295 NodeSet filter (bool delegate(Node) filter) | |
296 { | |
297 - NodeSet set = {host}; | |
298 + NodeSet set; set.host = host; | |
299 auto mark = host.mark; | |
300 | |
301 foreach (node; nodes) | |
302 @@ -1514,7 +1516,7 @@ | |
303 NodeSet child (bool delegate(Node) filter, | |
304 XmlNodeType type = XmlNodeType.Element) | |
305 { | |
306 - NodeSet set = {host}; | |
307 + NodeSet set; set.host = host; | |
308 auto mark = host.mark; | |
309 | |
310 foreach (parent; nodes) | |
311 @@ -1534,7 +1536,7 @@ | |
312 | |
313 NodeSet attribute (bool delegate(Node) filter) | |
314 { | |
315 - NodeSet set = {host}; | |
316 + NodeSet set; set.host = host; | |
317 auto mark = host.mark; | |
318 | |
319 foreach (node; nodes) | |
320 @@ -1565,7 +1567,7 @@ | |
321 } | |
322 } | |
323 | |
324 - NodeSet set = {host}; | |
325 + NodeSet set; set.host = host; | |
326 auto mark = host.mark; | |
327 | |
328 foreach (node; nodes) | |
329 @@ -1583,7 +1585,7 @@ | |
330 | |
331 NodeSet parent (bool delegate(Node) filter) | |
332 { | |
333 - NodeSet set = {host}; | |
334 + NodeSet set; set.host = host; | |
335 auto mark = host.mark; | |
336 | |
337 foreach (node; nodes) | |
338 @@ -1613,7 +1615,7 @@ | |
339 | |
340 NodeSet ancestor (bool delegate(Node) filter) | |
341 { | |
342 - NodeSet set = {host}; | |
343 + NodeSet set; set.host = host; | |
344 auto mark = host.mark; | |
345 | |
346 void traverse (Node child) | |
347 @@ -1648,7 +1650,7 @@ | |
348 NodeSet next (bool delegate(Node) filter, | |
349 XmlNodeType type = XmlNodeType.Element) | |
350 { | |
351 - NodeSet set = {host}; | |
352 + NodeSet set; set.host = host; | |
353 auto mark = host.mark; | |
354 | |
355 foreach (node; nodes) | |
356 @@ -1675,7 +1677,7 @@ | |
357 NodeSet prev (bool delegate(Node) filter, | |
358 XmlNodeType type = XmlNodeType.Element) | |
359 { | |
360 - NodeSet set = {host}; | |
361 + NodeSet set; set.host = host; | |
362 auto mark = host.mark; | |
363 | |
364 foreach (node; nodes) | |
232 Index: tango/core/Vararg.d | 365 Index: tango/core/Vararg.d |
233 =================================================================== | 366 =================================================================== |
234 --- tango/core/Vararg.d (revision 3939) | 367 --- tango/core/Vararg.d (revision 3939) |
235 +++ tango/core/Vararg.d (working copy) | 368 +++ tango/core/Vararg.d (working copy) |
236 @@ -15,6 +15,10 @@ | 369 @@ -15,6 +15,10 @@ |