1 2011-12-31 Iain Buclaw <ibuclaw@ubuntu.com>
3 * d/d-codegen.cc, d/d-glue.cc, d/d-irstate.cc: Revert some prior code
7 * d/d-decls.cc, d/d-glue.cc: Issue #301 - ref return funcs returning
11 2011-12-30 Iain Buclaw <ibuclaw@ubuntu.com>
13 * d/d-irstate.cc, d/d-lang.cc: Implicitly convert all statements to
14 void, warn if statement has no side effects.
17 * d/d-decls.cc, d/d-glue.cc: mark RESULT_DECL as artificial.
20 * d/d-codegen.cc, d/d-glue.cc: Remove check for isref out of ::call
21 and into CallExp::toElem
24 * d/d-codegen.cc, d/d-codegen.h, d/d-glue.cc: Use INIT_EXPR instead of
25 MODIFY_EXPR where applicable, added vinit.
28 * d/d-codegen.cc, d/d-codegen.h: Move functions written in d-codegen
29 header to source file.
32 * d/d-codegen.cc: Issue #302 - lazy arg causing ICE in
33 gimple_expand_cfg, at cfgexpand.c:4063
36 2011-12-28 Daniel Green <venix1@gmail.com>
38 * d/phobos2/Makefile.am, d/phobos2/Makefile.in: Add
39 std/internal/windows/advapi32.o to WINDOWS_OBJS.
42 2011-12-28 Iain Buclaw <ibuclaw@ubuntu.com>
44 * d/d-gcc-includes.h, d/d-glue.cc: Emit pretty debug tree information
45 on -fdump-tree-original
48 * d/d-asm-i386.h, d/d-codegen.h, d/d-glue.cc, d/d-lang.cc,
49 d/d-objfile.cc: Remove some dead code.
52 * d/d-codegen.cc, d/d-decls.cc, d/d-glue.cc, d/d-lang-45.h,
53 d/d-lang.cc, d/d-lang.h, d/d-objfile.cc: Issue #258 - cannot access
54 frame with contract inheritance
57 * d/d-lang.cc, d/gdc.1, d/lang.opt: Add switches to control in(),
58 out() and invariant() code generation.
61 * d/asmstmt.cc, d/d-builtins2.cc, d/d-decls.cc, d/d-glue.cc,
62 d/patches/patch-gcc-4.2.x, d/patches/patch-gcc-4.3.x,
63 d/patches/patch-gcc-4.4.x, d/patches/patch-gcc-4.5.x,
64 d/patches/patch-gcc-4.6.x: Remove gdc patch to cgraph.c - fix codegen.
67 * d/d-decls.cc: Issue #298 - Array Range Functions Don't Get Inlined
70 2011-12-25 Iain Buclaw <ibuclaw@ubuntu.com>
72 * d/d-glue.cc, d/dmd2/expression.c, d/dmd2/expression.h,
73 d/dmd2/optimize.c, d/phobos/configure, d/phobos2/configure: Fixup
74 arrayliteral assignments.
77 * d/phobos/configure, d/phobos2/configure: Rebuild configure for D1
80 * d/d-glue.cc: Issue #297 - GDC Acquires Locks Twice in Synchronized
84 * d/d-objfile.cc, d/d-objfile.h: First attack at fixing issue #246
87 2011-12-23 Iain Buclaw <ibuclaw@ubuntu.com>
89 * d/d-codegen.cc: Issue #287 - Casting between array types is broken.
92 * d/phobos2/Makefile.in, d/phobos2/configure: Rebuild Makefile.in,
96 * d/d-lang.cc: Issue #296 - -fproperty implies -frelease
99 * d/d-codegen.cc, d/d-codegen.h, d/d-lang.cc: Remove unused
103 * d/d-codegen.cc: Issue #289 - ICE: in extract_range_from_binary_expr,
107 * d/dmd-script, d/dmd-script.1, d/gdc.1: Update manpages for new
111 * d/d-objfile.cc: Issue #279 - ICE: in gimple_expand_cfg
114 * d/d-builtins2.cc: Add CTFE support for builtins atan2, rndtol,
118 2011-12-18 Iain Buclaw <ibuclaw@ubuntu.com>
120 * d/d-codegen.cc: D2 - Handle nulltype to D array conversions.
123 * d/d-glue.cc, d/d-lang.cc: Match GCC logic for emitting D_LP64
127 * d/d-codegen.cc, d/d-decls.cc, d/d-glue.cc: Better implementation of
128 bt, btc, bts, btr functions, allowing constant folding.
131 * d/d-builtins2.cc: Implement CTFE for bswap, bsr, bsf.
134 * d/druntime/core/thread.d: Issue #290 - errno conflict in std.file
137 * d/d-lang.cc: Define D_LP64 if is64bit.
140 * d/dmd-script: Issue #282 - gdmd multithreaded -lib implementation.
143 * d/dmd-script: Issue #283 - gdmd: libraries not put into -od dir.
146 * d/d-objfile.cc, d/dmd/attrib.c, d/dmd2/attrib.c, d/lang.opt: Issue
147 #286 - -fignore-unknown-pragmas doesn't seem to work
150 2011-12-16 Iain Buclaw <ibuclaw@ubuntu.com>
152 * d/d-builtins2.cc, d/d-codegen.cc, d/d-decls.cc, d/d-glue.cc,
153 d/d-irstate.cc, d/d-irstate.h, d/d-lang.cc, d/dmd2/*, d/druntime/*,
154 d/phobos2/*: Updated D2 Frontend to 2.057
157 2011-12-11 Iain Buclaw <ibuclaw@ubuntu.com>
159 * d/dmd/*: Updated D1 Frontend to 1.072
162 * d/dmd/expression.c, d/dmd2/expression.c: Issue #279 - ICE: in
166 2011-12-08 Iain Buclaw <ibuclaw@ubuntu.com>
168 * d/Make-lang.in, d/asmstmt.cc, d/d-asm-i386.h, d/d-builtins2.cc,
169 d/d-codegen.cc, d/d-cppmngl.cc, d/d-decls.cc, d/d-dmd-gcc.h,
170 d/d-glue.cc, d/d-irstate.cc, d/d-lang-45.h, d/d-lang-type-45.h,
171 d/d-lang-type.h, d/d-lang.cc, d/d-lang.h, d/d-objfile.cc,
172 d/dmd-script, d/dmd2/*, d/druntime/*, d/phobos2/*: Updated D2 Fronted
176 * d/d-codegen.cc, d/d-glue.cc: Relax conversion checking. Move getImpl
180 * d/dmd/optimize.c, d/dmd2/optimize.c: Remove old frontend ifdef'd
184 2011-12-02 Iain Buclaw <ibuclaw@ubuntu.com>
186 * d/d-lang.cc, d/lang-specs.h, d/lang.opt: remove preprocessor options
187 from spec and use own switches.
190 * d/d-objfile.cc: Issue #275 - ICE with wrong interface implementation
193 * d/d-lang.cc, d/dmd/mars.h, d/dmd2/mars.h, d/lang-specs.h,
194 d/lang.opt: Issue #236 - -M, -MM, -MF options to generate dependencies
198 * d/d-lang.cc, d/lang.opt: ASCII collate lang switches.
201 2011-12-02 Iain Buclaw <ibuclaw@ubuntu.com>
203 * d/d-objfile.cc: Issue #268 - ICE with -flto and -g
206 2011-11-24 Iain Buclaw <ibuclaw@ubuntu.com>
208 * d/Make-lang.in: Issue #266 - make install-strip fails to install
212 * d/d-glue.cc, d/d-lang.cc, d/dt.cc: Remove checks for
213 type_structural_equality for now.
216 * d/d-glue.cc: Issue #261 - ICE: tree check: expected record_type or
217 union_type, have array_type in delegateVal
220 * d/d-glue.cc: Issue #264 - ICE: can't convert between bool and enum :
224 * d/d-codegen.cc, d/d-glue.cc: Issue #263 - forward reference error
228 2011-11-19 Iain Buclaw <ibuclaw@ubuntu.com>
230 * d/asmstmt.cc, d/d-asm-i386.h, d/d-builtins2.cc, d/d-decls.cc,
231 d/d-glue.cc, d/d-irstate.cc, d/d-lang-45.h, d/d-lang.cc, d/d-lang.h,
232 d/d-objfile.cc: Add d_free, rename dkeep to d_keep.
235 2011-11-18 Iain Buclaw <ibuclaw@ubuntu.com>
237 * d/d-builtins2.cc, d/d-codegen.cc, d/d-lang-45.h, d/d-lang.cc,
238 d/d-lang.h: Issue #262 - ICE: weird segfault when -o option is used
241 * d/d-lang.cc: Issue #255 - ICE: invalid conversion in gimple call
244 * d/d-decls.cc: Issue #259 - ICE: constant not recomputed when
248 * d/d-builtins2.cc, d/d-dmd-gcc.h, d/dmd/attrib.c,
249 d/dmd/declaration.c, d/dmd/declaration.h, d/dmd/mtype.c,
250 d/dmd/struct.c, d/dmd2/attrib.c, d/dmd2/declaration.c,
251 d/dmd2/declaration.h, d/dmd2/mtype.c, d/dmd2/struct.c: Issue #215 -
252 Alignment of struct members wrong on ARM
255 * d/d-codegen.cc, d/d-codegen.h, d/d-decls.cc, d/d-glue.cc,
256 d/d-lang.cc: Issue #242 - Another lambda segfault
259 2011-10-31 Iain Buclaw <ibuclaw@ubuntu.com>
261 * d/d-lang.cc: Arm -> ARM and darwin -> Darwin in d-lang.cc.
264 2011-10-30 Iain Buclaw <ibuclaw@ubuntu.com>
266 * d/target-ver-syms.sh: Make some system and CPU version identifiers
267 consistent in casing.
270 * d/d-codegen.cc, d/d-decls.cc, d/d-glue.cc: Use isMember2 when
271 checking member functions.
274 * d/d-codegen.cc, d/d-decls.cc, d/d-lang-45.h, d/d-lang.h,
275 d/d-objfile.cc: Issue #78 D1/D2 - in/out contract inheritance
278 2011-10-26 Iain Buclaw <ibuclaw@ubuntu.com>
280 * d/asmstmt.cc, d/d-asm-i386.h, d/d-glue.cc, d/d-irstate.cc: Issue
281 #252 - Error: suffix or operands invalid for `jc'
284 * d/lang-specs.h, d/patches/patch-apple-gcc-5465,
285 d/patches/patch-apple-gcc-5664, d/patches/patch-gcc-4.2.x,
286 d/patches/patch-gcc-4.3.x, d/patches/patch-gcc-4.4.x,
287 d/patches/patch-gcc-4.5.x, d/patches/patch-gcc-4.6.x: Issue #251 -
288 Remove all references to fmultilib-dir usage in gdc spec and patches.
291 2011-10-23 Iain Buclaw <ibuclaw@ubuntu.com>
293 * d/druntime/core/stdc/stdio.d, d/druntime/core/stdc/stdlib.d,
294 d/druntime/rt/critical_.d, d/druntime/rt/dmain2.d,
295 d/druntime/rt/monitor_.d, d/phobos/config/libc.x3,
296 d/phobos2/config/libc.x3, d/target-ver-syms.sh: Start on implementing
297 platform agnostic druntime for GDC D2.
300 * d/d-lang.cc, d/target-ver-syms.sh: Add VENDOR_VERSYM to D version
301 identifiers if defined.
304 * d/d-lang.cc, d/d-objfile.cc: Issue #224 - Link time optimization
307 * d/d-decls.cc, d/d-glue.cc, d/d-irstate.cc, d/d-irstate.h,
308 d/d-lang.cc, d/d-objfile.cc, d/d-objfile.h, d/lang.opt: Merge changes
312 * d/d-codegen.cc: Use gcc atomics for bt, btc, btr, bts intrinsics.
315 * d/d-glue.cc: build_assign_math_op: Stabilize LHS expression.
318 2011-10-21 Iain Buclaw <ibuclaw@ubuntu.com>
320 * d/asmstmt.cc, d/d-asm-i386.h, d/d-codegen.cc, d/d-glue.cc,
321 d/d-irstate.cc, d/d-lang-45.h, d/d-lang.h, d/dmd/mtype.c,
322 d/dmd2/mtype.c: Issue #247 - undefined reference to `.LDASM1'
325 * d/asmstmt.cc, d/d-asm-i386.h: Fallback to 32bit instruct suffix when
326 64bit not available, add special case for fild.
329 * d/asmstmt.cc, d/d-asm-i386.h: Issue #248 - Inline assembler
330 generates wrong argument size for FILD instruction.
333 2011-09-27 Iain Buclaw <ibuclaw@ubuntu.com>
335 * d/dmd-script: Issue #241 - dmd.conf DFLAGS doesn't work with
339 * d/d-codegen.cc, d/d-glue.cc: Issue #239 - Filter + Closure =
343 * d/dmd-script: Properly handle -X and -map switches in gdmd.
346 * d/asmstmt.cc, d/d-asm-i386.h, d/d-irstate.cc, d/d-irstate.h: Fixup
350 * d/dmd-script: Issue #234 - add DFLAGS to the build command in gdmd.
353 2011-09-25 Iain Buclaw <ibuclaw@ubuntu.com>
355 * d/dmd-script: Issue #234 - dmd.conf equivalent
358 * d/druntime/core/thread.d, d/phobos2/std/path.d: Re-add fixes that
359 got removed in last D library merge.
362 * d/dmd/todt.c, d/dmd2/todt.c, d/dt.cc: size_t'ify toDt.
365 * d/d-glue.cc: CallExp - only call convert on basic return types.
368 * d/d-gcc-real.cc: real_t::convert - check base type
371 * d/dmd/attrib.c, d/dmd2/attrib.c: Optimise attribute pragma
375 2011-09-23 Iain Buclaw <ibuclaw@ubuntu.com>
377 * d/d-glue.cc: Issue #235 - ICE in feep's tools library
380 2011-09-15 Daniel Green <venix1@gmail.com>
382 * d/d-glue.cc: Make PowAssignExp::toElem only compile with D2.
385 * d/dt.h: Issue #231. Use size_t for dt_size declaration in dt.h.
388 2011-09-14 Iain Buclaw <ibuclaw@ubuntu.com>
390 * d/d-builtins2.cc, d/d-gcc-real.cc, d/d-gcc-real.h, d/d-glue.cc,
391 d/dmd2/constfold.c, d/dmd2/declaration.h, d/dmd2/expression.c,
392 d/dmd2/expression.h, d/dmd2/interpret.c, d/dmd2/optimize.c: Implement
393 constant folding of ^^ expressions.
396 * d/asmstmt.cc, d/d-asm-i386.h, d/d-builtins2.cc, d/d-codegen.cc,
397 d/d-cppmngl.cc, d/d-decls.cc, d/d-glue.cc, d/d-incpath.cc,
398 d/d-lang.cc, d/d-objfile.cc, d/dt.cc: Change unsigned for size_t in
402 * d/d-lang.cc, d/dmd/mars.c, d/dmd2/mars.c: Re-enforce -Werror flag in
406 * d/d-glue.cc: Issue #232 - sqrt(3) == 2.15118e-4930
409 2011-09-12 Daniel Green <venix1@gmail.com>
411 * d/d-lang.cc: Convert Array to Strings required by DMD 1.070/2.055
414 2011-09-12 Iain Buclaw <ibuclaw@ubuntu.com>
416 * d/druntime/rt/dmain2.d, d/druntime/rt/lifetime.d: Issue #214 -
417 Segfault Allocating from Shared Static C'tor
420 * d/asmstmt.cc, d/d-asm-i386.h, d/d-builtins2.cc, d/d-codegen.cc,
421 d/d-codegen.h, d/d-cppmngl.cc, d/d-decls.cc, d/d-dmd-gcc.h,
422 d/d-glue.cc, d/d-incpath.cc, d/d-irstate.cc, d/d-irstate.h,
423 d/d-lang.cc, d/d-objfile.cc, d/d-objfile.h, d/dmd2/*, d/druntime/*,
424 d/phobos2/*: Updated D2 Frontend to 2.055.
427 * d/dmd/*, d/phobos/*: Updated D1 Frontend to 1.070.
430 2011-09-10 Iain Buclaw <ibuclaw@ubuntu.com>
432 * d/d-spec.c: Issue #230 - Error building Cross Compiler under MinGW
435 * d/d-lang.cc, d/druntime/core/thread.d: Issue #226 - GC from spawned
436 threads segfaults on 64-bit
439 2011-09-03 Daniel Green <venix1@gmail.com>
441 * d/asmstmt.cc: Use of V1 is more correct.
444 * d/dmd/root.c d/dmd2/root.c: Enables MinGW32 to use ANSI STDIO.
447 * d/asmstmt.cc: Allow inline assembly to set return values. Matches
451 2011-08-29 Iain Buclaw <ibuclaw@ubuntu.com>
453 * d/d-codegen.cc, d/d-decls.cc, d/d-glue.cc, d/d-lang.cc,
454 d/d-objfile.cc, d/symbol.cc: Emit pretty identifier to the debugger.
457 2011-08-23 Iain Buclaw <ibuclaw@ubuntu.com>
459 * d/d-codegen.cc, d/d-glue.cc, d/d-objfile.cc: Don't warn about unused
460 compiler generated vars.
463 * d/d-codegen.cc, d/d-codegen.h, d/d-glue.cc, d/d-irstate.cc,
464 d/d-irstate.h, d/d-lang-45.h, d/d-lang.cc, d/d-lang.h: New functions
465 build_d_decl_lang_specific, d_mark_exp_read. Added support for
466 -Wunused-variable, WIP -Wunused-but-set-variable.
469 2011-08-19 Daniel Green <venix1@gmail.com>
471 * d/druntime/core/sys/windows/stacktrace.d: Issue #227. build error
472 libphobos/core/sys/windows/stacktrace.d.
475 2011-08-15 Iain Buclaw <ibuclaw@ubuntu.com>
477 * d/d-decls.cc: Issue #225 - Array ops should be COMDAT.
480 2011-08-12 Iain Buclaw <ibuclaw@ubuntu.com>
482 * d/d-glue.cc, d/d-irstate.cc: Re-add codegen which caused issue #205
486 * d/d-codegen.cc, d/d-gcc-includes.h: Issue #191 - SEGV(gimple.c:2624)
487 getting array ref of incomplete type.
490 2011-08-07 Iain Buclaw <ibuclaw@ubuntu.com>
492 * d/d-codegen.cc, d/d-glue.cc: Issue #205 - ICE using phobos sort.
495 * d/d-asm-i386.h, d/d-tree.def: Define tree code IASM_EXPR.
498 * d/d-asm-i386.h: Handle zero and one operand forms of fcomi, fcomip.
499 Fixed db, ds, di, dl to output constants and strings properly.
502 * d/d-decls.cc, d/d-glue.cc, d/d-lang-type-45.h, d/d-lang-type.h,
503 d/d-lang.cc, d/d-lang.h: Create TYPE_LANG_SPECIFIC type for arrays,
504 functions, delegates.
507 * d/d-glue.cc, d/dt.cc: Use TYPE_STRUCTURAL_EQUALITY for conversions
508 of records, should fix Issue #217.
511 * d/asmstmt.cc, d/d-asm-i386.h: Fix error using offsetoff for
515 * d/d-asm-i386.h: Added SSE4.1, SSE4.2 instructions
518 * d/d-codegen.cc, d/d-codegen.h, d/d-glue.cc, d/d-lang-45.h,
519 d/d-lang.cc, d/d-lang.h, d/d-objfile.cc, d/dt.cc: More 4.6.x gimple
523 2011-07-30 Iain Buclaw <ibuclaw@ubuntu.com>
525 * d/d-codegen.cc, d/d-glue.cc, d/d-lang-45.h, d/d-lang.h,
526 d/d-objfile.cc, d/dt.cc: Fix gimplication checking issues in 4.6.x
529 * d/d-codegen.cc: Issue #220 - Segfault on nested mixin functions.
532 * d/patches/patch-gcc-4.6.x: Issue #218 - segmentation fault when
533 compiling Hello World.
536 2011-07-28 Daniel Green <venix1@gmail.com>
538 * d/d-glue.cc: Backout untested solution to issue #217.
541 * d/d-glue.cc, d/setup-gcc.sh: Fixes issue #219
544 * d/setup-gcc.sh: Updated -hg to reflect working directory revision
545 and handle compiling outside a mercurial repository.
548 2011-07-24 Iain Buclaw <ibuclaw@ubuntu.com>
550 * d/GDC.html, d/README, d/gdc-version: GDC version 0.30
553 * d/Make-lang.in, d/d-codegen.cc, d/d-codegen.h, d/d-glue.cc,
554 d/d-lang.cc, d/patches/patch-gcc-4.2.x, d/patches/patch-gcc-4.3.x,
555 d/patches/patch-gcc-4.4.x, d/patches/patch-gcc-4.5.x,
556 d/patches/patch-gcc-4.6.x, d/symbol.cc d/symbol.h: Re-implemented D
557 custom static chains into frontend - removed all belated backend
561 * d/Make-lang.in, d/asmstmt.cc, d/d-asm-i386.h, d/d-codegen.cc,
562 d/d-codegen.h, d/d-decls.cc, d/d-glue.cc, d/d-lang.cc, d/d-objfile.cc,
563 d/d-objfile.h, d/dmd2/*, d/druntime/*, d/phobos2/*: Updated D2
567 * d/Make-lang.in, d/asmstmt.cc, d/d-builtins.c, d/d-builtins2.cc,
568 d/d-codegen.cc, d/d-codegen.h, d/d-convert.cc, d/d-decls.cc,
569 d/d-glue.cc, d/d-irstate.cc, d/dmd/*, d/phobos/*: Updated D1 Frontend
573 2011-07-11 Iain Buclaw <ibuclaw@ubuntu.com>
575 * d/d-codegen.cc, d/d-glue.cc, d/d-lang.h: Debug fixes: Give AAs a
576 TYPE_NAME. Make closure vars visible to the debugger.
579 2011-07-09 Iain Buclaw <ibuclaw@ubuntu.com>
581 * d/d-asm-i386.h: Issue #213 - ASM: Invalid absolute jmp/call address
584 * d/d-asm-i386.h, d/d-glue.cc, d/d-lang.cc: Asm 32/64bit generation
588 * d/d-codegen.h, d/d-decls.cc, d/d-lang.h, d/patches/patch-gcc-4.4.x,
589 d/patches/patch-gcc-4.5.x, d/patches/patch-gcc-4.6.x: Use
590 TREE_NO_TRAMPOLINE macro - remove redundant patches.
593 2011-07-04 Iain Buclaw <ibuclaw@ubuntu.com>
595 * d/Make-lang.in: Fixes executable relocation issues with MinGW.
598 * d/d-decls.cc: Always mark struct/class members for inlining.
601 2011-06-30 Daniel Green <venix1@gmail.com>
603 * d/d-asm-i386.h: Fixes issue #213.
606 2011-06-20 Daniel Green <venix1@gmail.com>
608 * d/phobos/internal/gc/win32.d, d/phobos/std/stream.d: Win64 support
612 * d/Make-lang.in, d/dmd/root.c: Enables ANSI implemention of MinGW
616 * d/dmd-script: Added the ability to specify the name of output map
617 file. Undocumented DMD feature.
620 2011-06-19 Iain Buclaw <ibuclaw@ubuntu.com>
622 * d/d-codegen.cc, d/d-glue.cc, d/d-objfile.cc, d/dmd2/arrayop.c,
623 d/druntime/core/stdc/math.d, d/phobos2/gcc/deh.d: Issue #212 - ICE
627 2011-06-08 Iain Buclaw <ibuclaw@ubuntu.com>
629 * d/d-asm-i386.h, d/d-builtins2.cc, d/d-codegen.cc, d/d-codegen.h,
630 d/d-decls.cc, d/d-glue.cc, d/dmd2/*, d/druntime/*, d/phobos2/*:
631 Updated D2 Frontend to 2.053
634 * d/d-decls.cc, d/d-lang-45.h, d/d-lang.h, d/d-objfile.cc: gcc-4.6.x -
635 Fix imported static const optimizer bug (D2 now passes testsuite).
638 2011-06-05 Iain Buclaw <ibuclaw@ubuntu.com>
640 * d/Make-lang.in, d/d-codegen.cc, d/dmd-script: gcc-4.6.x - -combine
641 removed, re-add d-gcc.o object, fix compilation on ARM.
644 * d/d-decls.cc, d/d-objfile.cc, d/patches/patch-gcc-4.6.x: gcc-4.6.x -
645 Fix undefined references to thunks.
648 * d/d-bi-attrs-40.h, d/d-bi-attrs-41.h: Remove d-bi-attrs.h for 4.0
652 2011-06-02 Iain Buclaw <ibuclaw@ubuntu.com>
654 * d/Make-lang.in, d/d-bi-attrs-45.h, d/d-lang.cc, d/d-spec.c,
655 d/lang.opt, d/patches/patch-gcc-4.6.x, d/setup-gcc.sh: Fix missing
656 gcc-4.6 driver options, add to setup scripts.
659 2011-05-31 Iain Buclaw <ibuclaw@ubuntu.com>
661 * d/Make-lang.in, d/config-lang.in, d/d-builtins.c, d/d-builtins2.cc,
662 d/d-codegen.h, d/d-gcc-real.cc, d/d-glue.cc, d/d-incpath.cc,
663 d/d-lang-45.h, d/d-lang.cc, d/d-spec.c, d/lang.opt,
664 d/patches/patch-gcc-4.6.x, d/patches/patch-toplev-4.6.x: Add gcc-4.6.x
668 * d/Make-lang.in, d/d-bi-attrs-45.h, d/d-builtins.c, d/d-codegen.cc,
669 d/d-codegen.h, d/d-gcc-includes.h, d/d-lang.cc, d/d-lang.h,
670 d/d-objfile.cc, d/druntime/core/stdc/stdarg.d,
671 d/druntime/core/vararg.d, d/patches/patch-gcc-4.0.x,
672 d/patches/patch-gcc-4.1.x, d/patches/patch-toplev-4.0.x,
673 d/patches/patch-toplev-4.1.x, d/phobos/std/c/stdarg.d,
674 d/phobos/std/stdarg.d, d/symbol.h: Drop support for gcc-4.0.x;
678 * d/d-asm-i386.h: Rename cmpxch8b to cmpxchg8b
681 2011-04-29 Iain Buclaw <ibuclaw@ubuntu.com>
683 * d/d-glue.cc: Issue #203 - ArrayLiteralExp::toElem incorrectly sets
687 * d/druntime/core/stdc/wchar_.d: Use alias to make vswprintf and
688 swprintf match ANSI signature.
691 * d/d-glue.cc: Issue #200 - Optimization breaks condition variables
694 * d/d-builtins2.cc, d/d-codegen.cc, d/d-glue.cc, d/dt.cc: Be less
695 trusting with GCC builtins.
698 2011-04-23 Iain Buclaw <ibuclaw@ubuntu.com>
700 * d/d-asm-i386.h: Make SSE3 iasm opcodes available for 32bit.
703 * d/dmd/todt.c, d/dmd2/todt.c: speed up emission of large static array
707 * d-decls.cc, d/d-glue.cc, d/phobos/configure, d/phobos/configure.in,
708 d/phobos2/Makefile.am, d/phobos2/configure: D1 regression with static
709 array equality testing.
712 2011-04-18 Daniel Green <venix1@gmail.com>
714 * d/phobos2/Makefile.in: Added std/c/wcharh.d to list of compiled
715 Windows objects. Required by MinGW's stdio patch
718 2011-04-17 Iain Buclaw <ibuclaw@ubuntu.com>
720 * d/Make-lang.in, d/d-decls.cc, d/druntime/core/thread.d,
721 d/phobos/configure, d/phobos/configure.in, d/phobos2/Makefile.am,
722 d/phobos2/Makefile.in, d/phobos2/configure, d/phobos2/configure.in:
723 Edit configure scripts so cross compilers install imports in gcc
724 version specific runtime directory
727 * d/d-builtins2.cc: Issue #192 - ARM Compilation Fails When Including
731 * d/druntime/core/stdc/stdio.d: Change ctor in cstdio to 'shared
732 static' - should fix Mingw IO in std.stdio
735 * d/d-objfile.cc, d/druntime/core/stdc/stdio.d, d/phobos2/Makefile.am,
736 d/phobos2/Makefile.in, d/phobos2/std/stdio.d: Merge Daniel's MinGW
737 work, put special case static ctor in core.stdio
740 2011-04-15 Iain Buclaw <ibuclaw@ubuntu.com>
742 * d/dmd/func.c, d/dmd2/func.c: Remove __va_argsave definition from
746 * testsuite/*: Upload D2 testsuite for GDC.
749 * d/d-asm-i386.h, d/d-irstate.cc, d/d-objfile.cc,
750 d/druntime/core/thread.d: 64bit IASM fix, move tls definitions to
751 d-objfile, add _tls_index stub for MinGW.
754 * d/d-objfile.cc: Issue #187 - Multiple definition of TypeInfo with
758 * d/d-lang.cc, d/dmd-script, d/druntime/rt/monitor_.d: Uncomment
759 implementations in rt.monitor_ (for MinGW), code cleanups.
762 * d/d-codegen.cc: Issue #189 - sqrt(integer) causes ICE in
763 maybeExpandSpecialCall
766 * d/d-incpath.cc: Issue #188 - -J option ignored.
769 * d/Make-lang.in, d/d-asm-i386.h, d/d-builtins2.cc, d/d-codegen.cc,
770 d/d-glue.cc, d/d-irstate.cc, d/dt.cc: 64bit testsuite fixes - passes
771 all tests 32bit linux passes.
774 * d/Make-lang.in, d/d-builtins.c, d/d-decls.cc, d/d-lang-45.h,
775 d/d-lang.cc, d/d-lang.h, d/d-misc.c, d/d-objfile.cc,
776 d/phobos/configure, d/phobos/configure.in, d/phobos2/configure,
777 d/phobos2/configure.in: Remove d-misc.c, fixed code that depended on
781 * d/d-builtins2.cc, d/d-codegen.cc, d/d-codegen.h: Issue #185 -
782 Intrinsics cause ICE on MinGW
785 2011-04-11 Daniel Green <venix1@gmail.com>
787 * d/Make-lang.in, d/d-incpath.cc, d/d-lang-45.h, d/d-lang.cc,
788 d/d-lang.h: Added d-incpath.c for handling import paths.
791 * d/setup-gcc.sh: Added option '-hg' for replacing 'gdc-version' with
795 2011-04-09 Iain Buclaw <ibuclaw@ubuntu.com>
797 * d/d-codegen.cc, d/d-codegen.h: Implement math intrinsics into the
801 * d/d-asm-i386.h, d/druntime/core/atomic.d: More 64bit IASM fixes,
802 favour ASM implementations in core.atomic.
805 * d/phobos2/gcc/bitmanip.d: Really remove gcc.bitmanip.
808 * d/druntime/core/atomic.d, d/phobos/configure, d/phobos/configure.in,
809 d/phobos2/Makefile.am, d/phobos2/Makefile.in, d/phobos2/configure,
810 d/phobos2/configure.in, d/phobos2/gcc/atomics.d: First stab at
811 gcc.atomics; Remove unused gcc.bitmanip; Add -inline as DFLAG for
815 2011-04-08 Iain Buclaw <ibuclaw@ubuntu.com>
817 * d/d-asm-i386.h, d/d-codegen.cc, d/d-glue.cc, d/d-lang.cc,
818 d/d-spec.c: Issue #164 - ICE:fold-const.c:2792.
821 * d/d-asm-i386.h, d/druntime/core/thread.d: 64bit IASM fixes.
824 * d/d-builtins2.cc, d/d-glue.cc: Issue #164 - (ICE:fold-const.c:2792)
828 * d/d-lang.cc, d/phobos/Makefile.am, d/phobos/Makefile.in,
829 d/phobos2/Makefile.am, d/phobos2/Makefile.in: Phobos: Issue #179 -
830 explicitly include zlib directory when building.
833 * d/d-convert.cc: Issue 143: non-determistic FPE in runtime code.
836 * d/d-codegen.cc: Issue #178 - ICE in hwi2toli.
839 * d/Make-lang.in, d/d-codegen.cc: Tidy up Make-lang.in, remove old
843 * d/d-codegen.cc, d/d-glue.cc, d/d-irstate.cc, d/d-objfile.cc: Remove
844 old-old workarounds for GCC < 4.0.x
847 * d/d-gcc-real.cc, d/d-gcc-real.h, d/dmd/cast.c, d/dmd2/cast.c,
848 d/dmd2/expression.c: D2: Fix precision bug in PowExp.
851 * d/d-codegen.cc, d/d-gcc-real.cc: Don't error when casting from
852 static array -> struct of same type size.
855 2011-03-30 Iain Buclaw <ibuclaw@ubuntu.com>
857 * d/Make-lang.in, d/d-gcc-real.cc, d/d-gcc-real.h: Fix strict-aliasing
861 2011-03-30 Daniel Green <venix1@gmail.com>
863 * d/asmstmt.cc: An unitialized array was forcing GDC to mark all
864 registers as clobbered.
867 2011-03-27 Iain Buclaw <ibuclaw@ubuntu.com>
869 * d/d-lang.cc: Move cgraph finalize into d_write_global_decls.
872 * d/asmstmt.cc, d/d-asm-i386.h, d/d-codegen.h, d/d-dmd-gcc.h,
873 d/d-gcc-real.h, d/d-irstate.cc, d/d-irstate.h, d/d-objfile.cc,
874 d/d-objfile.h, d/druntime/core/thread.d, d/patches/patch-gcc-4.5.x,
875 d/symbol.h: _tlsstart/_tlsend compiler generated symbols.
878 * d/Make-lang.in, d/d-builtins.c, d/d-builtins2.cc, d/d-codegen.cc,
879 d/d-glue.cc, d/d-lang-45.h, d/d-lang.cc, d/d-lang.h: New
880 d_global_trees array for gcc trees of commonly used D types/decls.
883 2011-03-24 Iain Buclaw <ibuclaw@ubuntu.com>
885 * d/d-codegen.cc, d/d-decls.cc, d/d-glue.cc, d/d-objfile.cc,
886 d/d-objfile.h, d/patches/patch-gcc-4.1.x, d/patches/patch-gcc-4.2.x,
887 d/patches/patch-gcc-4.3.x, d/patches/patch-gcc-4.4.x,
888 d/patches/patch-gcc-4.5.x: More WIP DMD calling convention - evaluate
889 arguments left to right, pass in reverse order
892 * d/asmstmt.cc, d/d-asm-i386.h, d/d-codegen.cc, d/d-codegen.h,
893 d/d-irstate.cc, d/d-lang-45.h, d/d-lang.cc, d/d-lang.h, d/lang.opt:
894 More WIP - 64bit IASM.
897 * d/patches/patch-gcc-4.1.x, d/patches/patch-gcc-4.2.x,
898 d/patches/patch-gcc-4.3.x, d/patches/patch-gcc-4.4.x,
899 d/patches/patch-gcc-4.5.x, d/patches/patch-toplev-4.1.x,
900 d/patches/patch-toplev-4.2.x, d/patches/patch-toplev-4.3.x,
901 d/patches/patch-toplev-4.4.x, d/patches/patch-toplev-4.5.x: Switch
902 patches to unified diff.
905 * d/d-builtins2.cc, d/d-decls.cc, d/d-glue.cc, d/d-objfile.cc,
906 d/d-tree.def, d/patches/patch-gcc-4.1.x, d/patches/patch-gcc-4.2.x,
907 d/patches/patch-gcc-4.3.x, d/patches/patch-gcc-4.4.x,
908 d/patches/patch-gcc-4.5.x: More WIP DMD calling convention - Add
909 'optlink' function attribute.
912 2011-03-19 Iain Buclaw <ibuclaw@ubuntu.com>
914 * d/d-codegen.cc, d/d-codegen.h, d/d-glue.cc: WIP: Merge
915 make_bool_binop, make_math_op, make_assign_math_op into toElemBin.
918 * d/asmstmt.cc, d/d-asm-i386.h, d/d-bi-attrs-44.h, d/d-bi-attrs-45.h,
919 d/d-builtins2.cc, d/d-codegen.cc, d/d-codegen.h, d/d-convert.cc,
920 d/d-cppmngl.cc, d/d-decls.cc, d/d-glue.cc, d/d-irstate.h,
921 d/d-lang-45.h, d/d-objfile.cc, d/d-spec.c: Use gcc_unreachable instead
922 of abort, cleanup line endings.
925 2011-03-18 Iain Buclaw <ibuclaw@ubuntu.com>
927 * d/d-lang.cc, d/d-objfile.cc, d/d-objfile.h, d/symbol.cc, d/symbol.h:
928 Issue #167 - Assembler error: Already defined.
931 * d/d-glue.cc: IndexExp: call aaGetp if AA is modifiable.
934 * d/d-codegen.cc, d/d-objfile.cc: Issue #165: Link failure with
938 * d/Make-lang.in, d/d-builtins2.cc, d/d-codegen.cc: Add experimental
939 void* _argptr implementation switch in Makefile.
942 * d/Make-lang.in, d/d-builtins2.cc, d/d-codegen.cc, d/d-convert.cc,
943 d/d-gcc-real.cc, d/d-glue.cc, d/d-spec.c: Replace calls to
944 fold(build()) with fold_build()
947 * d/d-convert.cc: Harden d_truthvalue_conversion, catches scalars
948 passed for conversion by buggy frontend.
951 * d/Make-lang.in, d/d-decls.cc, d/d-glue.cc, d/d-lang.cc: Add
952 experimental DMD calling convention switch in Makefile
955 * d/d-bi-attrs-44.h: Update d-bi-attrs-44.h for current 4.4.5 release.
958 * d/d-glue.cc: Mark used parameters to prevent false warnings from
962 2011-03-12 Iain Buclaw <ibuclaw@ubuntu.com>
964 * d/d-glue.cc: Fix codegen bug in CatAssignExp.
967 * d/d-builtins2.cc, d/d-codegen.cc, d/d-codegen.h, d/d-glue.cc,
968 d/d-lang.cc, d/d-objfile.cc: IRState::addTypeModifiers - Add D2 type
969 modifiers (const/shared) onto GCC types (const/volatile).
972 2011-03-06 Iain Buclaw <ibuclaw@ubuntu.com>
974 * d/d-lang.cc, d/d-spec.c, d/gdc.1, d/lang-specs.h,
975 d/patches/patch-apple-gcc-5664, d/patches/patch-gcc-4.2.x,
976 d/patches/patch-gcc-4.3.x, d/patches/patch-gcc-4.4.x,
977 d/patches/patch-gcc-4.5.x: Remove lang_specific_spec_functions code.
980 * d/dmd-script: Issue #161 - noboundscheck doesn't work with GDMD.
983 2011-02-28 Iain Buclaw <ibuclaw@ubuntu.com>
985 * d/d-decls.cc, d/d-glue.cc, d/d-objfile.cc, d/d-objfile.h,
986 d/dmd/template.c, d/dmd2/template.c, d/symbol.h: Moved GCC code to
987 prevent templates being emitted more than once to the backend.
990 * d/Make-lang.in, d/d-decls.cc, d/d-glue.cc, d/d-lang.h,
991 d/d-objfile.cc: Cleaned up ObjFile::makeDeclOneOnly implementation.
994 2011-02-25 Iain Buclaw <ibuclaw@ubuntu.com>
996 * d/d-apple-gcc.c, d/d-builtins2.cc, d/d-c-stubs.c, d/d-codegen.cc,
997 d/d-gcc-includes.h, d/d-glue.cc, d/d-lang.cc, d/d-objfile.cc: Remove
998 dependencies on CPP objects.
1001 * d/d-gcc-includes.h, d/patches/patch-apple-gcc-5465,
1002 d/patches/patch-apple-gcc-5664, d/patches/patch-gcc-4.0.x,
1003 d/patches/patch-gcc-4.1.x, d/patches/patch-gcc-4.2.x,
1004 d/patches/patch-gcc-4.3.x, d/patches/patch-gcc-4.4.x,
1005 d/patches/patch-gcc-4.5.x: Remove old redundant code.
1008 * d/d-spec.c: Handle -pthread option in d-spec.c
1011 * d/d-glue.cc, d/phobos2/std/stdio.d, d/target-ver-syms.sh: Issue #151
1012 - MinGW-w64: recent GDC does not build w/ recent GCC
1015 * d/druntime/core/sys/posix/sys/un.d, d/phobos2/Makefile.am,
1016 d/phobos2/Makefile.in: Remove posix.sys.un from druntime.
1019 2011-02-20 Iain Buclaw <ibuclaw@ubuntu.com>
1021 * d/Make-lang.in, d/d-builtins2.cc, d/d-lang.cc, d/d-spec.c, d/dmd2/*,
1022 d/druntime/*, d/phobos2/*: Updated D2 Frontend to 2.052.
1025 * d/dmd/*, d/phobos/*: Updated D1 Frontend to 1.067.
1028 * d/d-objfile.cc: Put compiler-generated arrayops on comdat.
1031 * d/d-gcc-includes.h, d/d-glue.cc: use totym to apply D type modifiers
1035 * d/d-decls.cc: Issue #155 - ICE when using byte
1038 * d/d-bi-attrs-43.h, d/d-bi-attrs-44.h, d/d-bi-attrs-45.h: Remove
1039 'artificial' attribute from GDC.
1042 * d/d-codegen.cc, d/d-glue.cc, d/d-irstate.cc, d/d-lang.cc: Conversion
1043 fixes for types with GCC attributes applied.
1046 * d/d-codegen.cc, d/d-codegen.h, d/d-decls.cc, d/d-glue.cc,
1047 d/d-objfile.cc, d/druntime/object.di, d/druntime/object_.d,
1048 d/druntime/rt/aaA.d, d/phobos/Makefile.am, d/phobos/Makefile.in,
1049 d/phobos/gcc/support.d, d/phobos/internal/aaA.d,
1050 d/phobos/internal/gc/gc.d, d/phobos2/gcc/support.d: ABI update: New
1051 signatures for _d_assocarrayliteralTp, _d_arrayliteralTp and
1055 * d/d-glue.cc: Update make_assign_math_op implementation
1058 * d/d-builtins.c, d/d-builtins2.cc, d/d-codegen.cc,
1059 d/d-gcc-includes.h, d/d-glue.cc, d/d-lang-45.h, d/d-lang.cc,
1060 d/d-lang.h, d/d-objfile.cc: Fix cast-qual and unused parameter
1064 * d/Make-lang.in, d/d-c-stubs.c, d/d-lang.cc: Drop support for CPP
1068 2011-02-10 Iain Buclaw <ibuclaw@ubuntu.com>
1070 * d/d-builtins.c, d/d-builtins2.cc, d/d-lang-45.h, d/d-lang.cc,
1071 d/d-lang.h: New function added to langhooks: d_register_builtin_type.
1074 * d/d-bi-attrs-40.h, d/d-bi-attrs-41.h, d/d-bi-attrs-42.h,
1075 d/d-bi-attrs-43.h, d/d-bi-attrs-44.h, d/d-bi-attrs-45.h: Only accept
1076 string argument in mode attribute handler.
1079 * d/asmstmt.cc, d/d-builtins2.cc, d/d-codegen.cc, d/d-cppmngl.cc,
1080 d/d-decls.cc, d/d-dmd-gcc.h, d/d-glue.cc, d/d-irstate.cc,
1081 d/d-objfile.cc, d/d-todt.cc: Remove all references to total.h in glue.
1084 * d/asmstmt.cc, d/d-apple-gcc.c, d/d-asm-i386.h, d/d-builtins2.cc,
1085 d/d-codegen.cc, d/d-cppmngl.cc, d/d-decls.cc, d/d-gcc-real.cc,
1086 d/d-glue.cc, d/d-irstate.cc, d/d-lang.cc, d/d-objfile.cc, d/dt.cc:
1087 Remove all references to assert.h in glue.
1090 2011-02-02 Iain Buclaw <ibuclaw@ubuntu.com>
1092 * d/d-bi-attrs-40.h, d/d-bi-attrs-41.h, d/d-bi-attrs-42.h,
1093 d/d-bi-attrs-43.h, d/d-bi-attrs-44.h, d/d-bi-attrs-45.h,
1094 d/dmd/attrib.c, d/dmd2/attrib.c: Fix mode attribute handler to accept
1098 2011-01-29 Iain Buclaw <ibuclaw@ubuntu.com>
1100 * d/druntime/core/stdc/config.d: D2 - import gcc.builtins in
1104 * d/d-codegen.cc, d/d-glue.cc, d/druntime/core/stdc/config.d,
1105 d/druntime/core/stdc/stdint.d, d/druntime/core/thread.d,
1106 d/druntime/gc/gc.d, d/druntime/gc/gcbits.d, d/druntime/gc/gcx.d,
1107 d/druntime/gcstub/gc.d, d/druntime/rt/lifetime.d,
1108 d/phobos2/std/intrinsic.d: 64bit TLS/GC fixes. Closes #109, #115.
1111 2011-01-28 Iain Buclaw <ibuclaw@ubuntu.com>
1113 * d/Make-lang.in, d/d-codegen.cc, d/dmd/*, d/phobos/*: Updated D1
1117 * d/d-codegen.cc, d/d-glue.cc, d/druntime/rt/mars.h,
1118 d/phobos/std/c/stdarg.d: Remove redundant checks for Tbit in D1, add
1119 __va_argsave_t alias in phobos.
1122 * d/Make-lang.in: use new variable (ALL_CXXFLAGS)
1125 * d/d-c-stubs.c, d/d-codegen.cc, d/d-codegen.h, d/dmd/root.h,
1126 d/dmd2/root.h: Implement frontend std.intrinsics into GDC.
1129 2011-01-18 Iain Buclaw <ibuclaw@ubuntu.com>
1131 * d/asmstmt.cc, d/d-codegen.cc, d/dmd/statement.h, d/dmd2/statement.h:
1132 Implemented ExtAsmstatement::toCBuffer.
1135 * d/dmd/arrayop.c, d/dmd/root.c, d/dmd2/arrayop.c, d/dmd2/root.c: Add
1136 binary implementation, use it in arrayops.
1139 * d/dmd2/func.c, d/phobos/std/math.d, d/phobos2/std/intrinsic.d,
1140 d/phobos2/std/math.d, d/phobos2/std/string.d: Fix log2 implementation
1141 for systems requiring supplement.
1144 2011-01-16 Iain Buclaw <ibuclaw@ubuntu.com>
1146 * d/d-glue.cc: Pass static chain by reference for functions nested in
1150 * d/d-lang-45.h, d/dmd/todt.c, d/dmd2/todt.c: rework todt for GCC.
1153 * d/druntime/core/sys/posix/config.d,
1154 d/druntime/core/sys/posix/sys/stat.d,
1155 d/druntime/core/sys/posix/sys/types.d, d/druntime/gc/gcx.d: rework
1156 sys.stat struct implementation.
1159 2011-01-13 Iain Buclaw <ibuclaw@ubuntu.com>
1161 * d/d-glue.cc, d/d-lang.cc, d/d-lang.h: Improve type names of
1162 shared/const/immutable types in debugging.
1165 * d/d-codegen.cc: Issue #147 - static arrays passed as parameter
1166 should be value type.
1169 * d/patches/patch-gcc-4.4.x, d/patches/patch-gcc-4.5.x: Second fix for
1173 2011-01-09 Iain Buclaw <ibuclaw@ubuntu.com>
1175 * d/dmd/mtype.c, d/dmd2/mtype.c: Issue #134 - Fix 64bit double align.
1178 * d/dmd-script, d/patches/patch-gcc-4.4.x, d/patches/patch-gcc-4.5.x:
1179 Remove -fomit-frame-pointer from gdmd, fixes Issue #141
1182 2011-01-06 Iain Buclaw <ibuclaw@ubuntu.com>
1184 * d/d-codegen.h, d/d-glue.cc, d/d-objfile.cc, d/lang-specs.h: Compiler
1185 segfault when not Object class not defined.
1188 * d/d-builtins2.ca,c d/d-codegen.h, d/d-decls.cc, d/d-glue.cc,
1189 d/d-lang.cc, d/dmd/dchar.h, d/dmd/mars.c, d/dmd2/dchar.h: Fix some
1190 warnings in d-lang, ICE when object.d is empty.
1193 * d/d-asm-i386.h, d/d-codegen.h: Refs Issue #135 - turn ICE into a
1197 * d/d-glue.cc: Call rest_of_type_compilation in toDebug for
1201 * d/druntime/object.di, d/druntime/object_.d: Issue #133 - Segfault On
1205 * d/druntime/core/thread.d, d/druntime/gc/gcx.d: Refs #115 - addRoot
1206 for each call for malloc in the GC.
1209 * d/phobos2/Makefile.am, d/phobos2/Makefile.in: D2 - emit templates
1210 only for building phobos.
1213 * d/d-decls.cc, d/d-objfile.cc: Issue #132 - unresolved symbol with
1214 typedef initializers.
1217 * d/druntime/core/sys/posix/config.d,
1218 d/druntime/core/sys/posix/signal.d,
1219 d/druntime/core/sys/posix/sys/stat.d, d/phobos2/std/file.d: Fix struct
1220 stat_t implementation for linux.
1223 2011-01-02 Iain Buclaw <ibuclaw@ubuntu.com>
1225 * d/d-spec.c: Fix warning messages in d-spec.c.
1228 * d/d-codegen.cc, d/d-glue.cc: Issue #105 - assertion failure
1229 comparing structs for equality.
1232 * d/d-codegen.cc: Fix some diagnostic messages.
1235 * d/d-convert.cc: Update d_convert_basic for gcc-4.5
1238 * d/d-builtins.c, d/d-builtins2.cc, d/d-codegen.cc, d/d-decls.cc,
1239 d/d-glue.cc, d/d-lang-45.h, d/d-lang.cc, d/d-lang.h, d/d-objfile.cc:
1240 Declare d_build_decl as extern "C". Add function d_build_decl_loc.
1244 Copyright (C) 2011 Free Software Foundation, Inc.
1246 Copying and distribution of this file, with or without modification,
1247 are permitted in any medium without royalty provided the copyright
1248 notice and this notice are preserved.