testsuite: Use posix_memalign on AIX for tsvc
[official-gcc.git] / gcc / d / ChangeLog-2007
bloba2e504362c3ffb8ede1c0ab57e3e3a0a322f0452
1 2007-12-15  David Friedman  <dvdfrdmn@users.sf.net>
3         * phobos*/Makefile.{am,in}, phobos*/aclocal.m4: Automake changes
5         * setup-gcc.sh: Support Apple GCC build 5465
7         * patch-apple-gcc-5465, patch-build_gcc-5465, patch-toplev-5465:
8         new files
10 2007-12-01  David Friedman  <dvdfrdmn@users.sf.net>
12         * phobos/config/unix.x3, phobos/config/x3.c, phobos/config/x3.h
13         phobos/config/x3, phobos/config/x3main.c: better diagnostics
14         and behavior
16 2007-11-24  David Friedman  <dvdfrdmn@users.sf.net>
18         * setup-gcc.sh: Ignore .svn directories when making symlink trees.
20         * d-bi-attrs-34.h, d-bi-attrs-341.h, d-bi-attrs-40,h,
21         d-bi-attrs-41.h: Support attributes on declarations in
22         other modules.
24         * d-codegen.cc (IRState::attributes): Support constant declarations
25         as string arguments.
27 2007-11-08  David Friedman  <dvdfrdmn@users.sf.net>
29         * d-cppmngl.cc: Use base-36 in substitutions.  Other fixes.
31 2007-10-17  David Friedman  <dvdfrdmn@users.sf.net>
33         * d-cppmngl.cc: More C++ mangling fixes and cleanups.
35 2007-10-16  David Friedman  <dvdfrdmn@users.sf.net>
37         * d-glue.cc (EqualExp::toElem): Convert result to libcall
38         to expression type. (Bugzilla 1573)
40 2007-10-15  David Friedman  <dvdfrdmn@users.sf.net>
42         * d-cppmngl.cc: Improve C++ mangling.
44 2007-10-14  David Friedman  <dvdfrdmn@users.sf.net>
46         Merge DMD 1.022, 2.005
48         * dmd/..., dmd2/..., phobos/..., phobos2/...: Merge.
50         * Make-lang.in: Add builtin.dmd.o and d-cppmngl.o for V2.
52         * d-cppmngl.cc: New file
54         * phobos/std/c/dirent.d, phobos/std/c/linux/linux.d: Update
55         * phobs2/...: same
57         * symbol.h, d-decls.cc: Remove references to Classym
59         ----
61         * d-glue.cc (CatExp::toElem): Null check. (Bugzilla 1581)
63         Remove carriage returns from files
65 2007-10-13  David Friedman  <dvdfrdmn@users.sf.net>
67         * d-glue.cc (CatExp::toElem): Flatten multiple CatExps into a
68         single library call. (Bugzilla 1556)
70         * phobos/std/boxer.d (box, boxArray), phobos2/...: Fix for
71         promoted types. (Bugzilla 1543)
73         * d-codegen.cc (call): Catch a case in which a member function can
74         be called without 'this'. (Bugzilla 1568)
76         * dmd/mtype.c (TypeArray::dotExp): Correct return type of
77         sort and reverse functions. (SF 1809220 / Bugzilla 1554)
79         * dmd2/mtype.c: Ditto.
81         * patch-gcc-4.1.x: Add patch for ARM exception handling int nested
82         functions.
84         * d-objfile.cc: Make DT data TREE_CONSTANT
86         * dmd2/optimize.c: Fix for infinite recursion on initializer
87         when an error has already occurred.
89         -----
91         Add support for ARM EABI.  Fix some missing items from
92         cross-compilation changes.
94         * d-lang.cc: Add "Arm" and "Thumb" version identifiers
96         * phobos/unwind.d: Move pointer encoding to deh_pe.d. Move generic
97         unwinder interface to unwind_generic.d.  Import either generic or
98         ARM interfaces based on config value.
100         * phobos/unwind_generic.d, phobos/unwind_pe.d: New file; old code.
102         * phobos/unwind_arm.d: New file.
104         * phobos/deh.d: Support ARM exception handling ABI.
106         * phobos/configure.in, frag-ac.in: Add config for ARM unwinder
108         * phobos/configure.in, phobos/internal.c, phobos/monitor.c: Support
109         "no system" targets.
111         * phobos/cbridge_math.c: Correct identifier names for earlier
112         changes.
114         * phobos/Makefile.am, phobos/Makefile.in, phobos/config.h.in,
115         phobos/configure : Update.
117         * phobos2/...: Duplicate phobos/ changes
119 2007-10-07  David Friedman  <dvdfrdmn@users.sf.net>
121         Merge cross-compilation changes to phobos2
123         * phobos2/....: Merge
125         ---
127         Enhance cross-compilation support:
129         * phobos/Makefile.am, phobos/Makefile.in, phobos/acinclude.m4,
130         phobos/aclocal.m4, phobos/configure.in, phobos/configure,
131         phobos/config.h.in: Replace "fragment generation" with "X3"
132         system.  Remove obsolete tests.
134         * phobos/config/{config-head, config-mid, config-tail}: Removed
135         * phobos/config/{makestruct.h, unix-head, unix-mid}: Removed
136         * phobos/{darwin8, mingw, skyos}: Removed
138         * phobos/config/{errno.x3, fpcls.x3, libc.x3, unix.x3},
139         phobos/config{x3, x3.c, x3.h, x3main.c}:  New files
141         * phobos/frag-ac.in: Now only contains boolean constants.
142         * phobos/frag-math.in: New file.  Contains old configured math
143         functions.
145         * phobos/gcc/configext.d: Removed
146         * phobos/gcc/support.d: Move fallback strtold definition here.
148         * phobos/Makefile.am: Do not compile std/c/stdio.o
149         * phobos/std/c/stdio.c: Change function definitions to external
150         declarations.
152         * phobos/gcc/deh.d, phobos/gcc/fpcls.d, phobos/gcc/fpmath.d,
153         phobos/gcc/support.d, phobos/gcc/threadsem.d,
154         phobos/internal/dgccmain2.d, phobos/internal/fpmath.d,
155         phobos/internal/gc/gcgcc.d, phobos/phobos-ver-syms.in,
156         phobos/std/c/dirent.d, phobos/std/c/math.d, phobos/std/c/stddef.d,
157         phobos/std/c/stdio.d, phobos/std/c/stdlib.d, phobos/std/c/time.d,
158         phobos/std/c/unix/unix.d, phobos/std/date.d, phobos/std/math.d,
159         phobos/std/math2.d, phobos/std/mmfile.d, phobos/std/random.d,
160         phobos/std/stdio.d, phobos/std/stream.d, phobos/std/system.d,
161         phobos/std/thread.d: Update.  Add some support for targets
162         withouth an operation system.
164 2007-09-24  David Friedman  <dvdfrdmn@users.sf.net>
166         * d-glue.cc (IndeExp::toElem), d-codegen.cc (arrayElemRef):
167         Put the BIND_EXPR "inside the brackets". (Bugzilla 1155)
169         (StructLiteralExp::toElem): Handle NULL elements (for anonymous
170         unions.)
172 2007-09-23  David Friedman  <dvdfrdmn@users.sf.net>
174         * d-codegen.{h,cc}, d-glue.cc: Add type to error_mark_node
175         for code that assumes the type of certain expressions.
176         (Bugzilla 1051)
178         * d-glue.cc (FuncDeclaration::toObjFile): Set DECL_IGNORED_P
179         on the frame paramter.  (Bugzilla 1033)
181         * d-glue.cc, d-codegen.cc, d-objfile.cc: Set DECL_IGNORED_P
182         in most cases where DECL_ARTIFICIAL is set.
184         * d-builtins2.cc (d_gcc_magic_builtins_module): Handle type
185         declarations after converting functions.
187         * d-glue.cc (make_assign_math_op): Special case for division
188         when lhs is imaginary. (Bugzilla 739)
190         * dmd-script: Apply Ander's patch for implicit -H and -D
191         behavior.  (Bugzilla 1502)
193         Use of -of argument does not depend on header generation.
194         (Bugzilla 1501)
196         * d-builtins2.cc,  dmd*/module.c: If the target va_list is a
197         struct, add the struct declaration to the object module.
198         (Bugzilla 1507)
200         * dmd2/parse.c: fix line endings
202         ----
204         Update for D 2.0:
206         * Make-lang.in: Support both DMD front end version 1 and 2.
207         Replace gcc-mars.cc with  d/mars.c.
209         * gcc-mars.cc: Remove file.
211         * d-codegen.h, d-codegen.cc: Update for DMD 2.x.
212         Add _d_hidden_func libcall.
214         * d-decls.cc, d-glue.cc: Update for DMD 2.x.
216         * d-dmd-gcc.h: Add rtlsym, etc.
218         * d-lange.cc: Include mars.h.  Implement rtlsym.
220         * d-objfile.cc (ObjectFile::hasModule): Add checks to allow
221         this function to be called earlier.
223         * dmd*/mars.c: Make changes for GDC.
225         * dmd*/attrib.c: Use WANTinterpret for pragma(GNU_asm)
227         * dmd2/parse.c (parseDeclarator): Fix aliasing bug.
229         * rdmd.d: Update for D 2.0
231         * gdc-version: now only contains the GDC version
233         * setup-gcc.sh: Support building D version 1 or 2.  Take DMD
234         version from dmd*/mars.c.
236         * dmd2/, phobos2/: New directories
238         * phobos2/Makefile.am (MAIN_OBJS): add std.c.stdio module
239         for std{in,out,err} vars
241         * phobos*/std/c/stdio.d: Make functions with definitions
242         extern(D).
244         * phobos2/std/loader.d: Update for D 2.0.
246         * phobos2/std/hiddenfunc.d: Use C calling conventions for GDC.
248 2007-09-14  David Friedman  <dvdfrdmn@users.sf.net>
251         * d-codegen.cc (convertTo, call): Prevent multiple re-evaluation
252         of delgate. (Bugzilla 1492)
254 2007-09-13  David Friedman  <dvdfrdmn@users.sf.net>
256         * d-glue.cc, d-codegen.h, d-codegen.cc: Make it an error
257         to reference a nested function without a body. (SF 1793594)
259 2007-09-12  David Friedman  <dvdfrdmn@users.sf.net>
261         * phobos/config/ldfuncs-ppclinux: Declare sqrt.
263         * target-ver-syms.sh, phobos/acinclude.m4, phobos/configure.in:
264         Support kfreebsd.
266         * d-codegen.{h, cc}, d-glue.cc: Change rawArray to toDArray. Do
267         not cast result to void[]. (Bugzilla 1490)
269 2007-09-07  David Friedman  <dvdfrdmn@users.sf.net>
271         * phobos/std/c/stdio.d: Define fpos_t correctly for Drawin
272         (Bugzilla 1469)
274 2007-09-05  David Friedman  <dvdfrdmn@users.sf.net>
276         Merge DMD 1.021
278         * dmd-script, d-spec.c (lang_specific_driver): Support
279         -debuglib= and -defaultlib= options.
281         * dmd/cast.c, dmd/constfold.c, dmd/declaration.c, dmd/dsymbol.c,
282         dmd/expression.c, dmd/expression.h, dmd/func.c, dmd/identifier.c,
283         dmd/idgen.c, dmd/init.c, dmd/init.h, dmd/interpret.c, dmd/lexer.c,
284         dmd/lexer.h, dmd/link.c, dmd/mars.c, dmd/mars.h, dmd/parse.c,
285         dmd/statement.c, dmd/staticassert.c, dmd/template.c: Merge
287         * internal/object.d, phobos/internal/trace.d, phobos/object.d,
288         phobos/std/c/windows/windows.d, phobos/std/date.d,
289         phobos/std/regexp.d, phobos/std/windows/registry.d: Merge
291         ---
293         * phobos/std/stdio.d (readln): Use the result of getdelim
294         correctly. (SF 1788195)
296         * d-glue.cc (FuncDeclaration::toObjFile): Do not gimplify if
297         there were errors (Bugzilla 1415)
299 2007-08-31  David Friedman  <dvdfrdmn@users.sf.net>
301         * d-objfile.cc (outdata): Do not set TREE_CONSTANT on initializers
302         (Bugzilla 1453)
304 2007-08-29  David Friedman  <dvdfrdmn@users.sf.net>
306         * d-decls.cc (uniqueName): Allow multiple static declaration with
307         the same name if in a function. (SF 1783085)
309 2007-08-28  David Friedman  <dvdfrdmn@users.sf.net>
311         * d-codegen.cc (call): Use CommaExp correctly. (Bugzilla 1443)
313         * dmd/todt.c (createTsarrayDt): Don't take quadratic time to build
314         the initializer. (Bugzilla 1440)
316 2007-08-22  David Friedman  <dvdfrdmn@users.sf.net>
318         Release GDC 0.24
320         ---
322         * rdmd.d: Fix for Windows
324 2007-08-21  David Friedman  <dvdfrdmn@users.sf.net>
326         * GDC.html, History, README, gcc-mars.cc, gdc-version:
327         Update for 0.24
329         * rdmd.d, rdmd.1: New files. (Bugzilla 1152)
331         * patch-build_gcc-4.0: Build universal rdmd. (Bugzilla 1152)
333         * package/simple.sh: Install rdmd. (Bugzilla 1152)
334         Install man pages for MacOS build.
336         * dmd-script: Apply Ander's patch to make -op apply
337         to interface files. (Bugzilla 1137)
339         * d-lang.cc (d_parse_file): In -fall-sources mode,
340         only generate an interface file for the -fonly module.
342         * phobos/internal/adi.d (_adReverseChar, _adReverseWchar):
343         Make sure stride difference is signed.
345 2007-08-20  David Friedman  <dvdfrdmn@users.sf.net>
347         * patch-gcc-4.1.x, patch-gcc-4.0.x: Fix botched patches.
349 2007-08-05  David Friedman  <dvdfrdmn@users.sf.net>
351         * d-codegen.cc (convertForArgument): Recognize
352         pointer arithmetic expression as reference.
353         (Bugzilla 1400)
355         * d-glue.cc (DotVarExp::toElem): Do not NOP_EXPR
356         the result. (Bugzilla 1398)
358 2007-07-27  David Friedman  <dvdfrdmn@users.sf.net>
360         * phobos/std/stdio: Fix breakage from last commit.
361         (SF 1761989)
363 2007-07-26  David Friedman  <dvdfrdmn@users.sf.net>
365         * phobos/std/c/stdio.d: Change import for gcc.config
367         * d-lang.cc: add flag_iso for target macros
369         * patch-gcc-4.0.x:  (gcc/tree-sra.c): Do not use SRA
370         on structs with aliased fields created for anonymous
371         unions.  (Followup to Bugzilla 1034)
373 2007-07-25  David Friedman  <dvdfrdmn@users.sf.net>
375         * d-lang.cc: implement d_gcc_is_target_win32
377         * dmd/parse.c (parseLinkage): use d_gcc_is_target_win32
379         * d-dmd-gcc.h (d_gcc_is_target_win32): added
381 2007-07-24  David Friedman  <dvdfrdmn@users.sf.net>
383         Merge DMD 1.019 - 1.020
385         * dmd/attrib.c, dmd/cast.c, dmd/constfold.c, dmd/declaration.h,
386         dmd/expression.c, dmd/expression.h, dmd/func.c, dmd/idgen.c,
387         dmd/inline.c, dmd/interpret.c, dmd/mars.c, dmd/mars.h,
388         dmd/mtype.c, dmd/mtype.h, dmd/opover.c, dmd/parse.c,
389         dmd/template.c, dmd/template.h, dmd/tocsym.c, dmd/toir.c: Merge
391         * phobos/internal/gc/gc.d, phobos/linux.mak,
392         phobos/std/demangle.d, phobos/std/format.d, phobos/std/loader.d,
393         phobos/std/socket.d, phobos/std/uni.d: Merge
395 2007-07-22  David Friedman  <dvdfrdmn@users.sf.net>
397         Merge DMD 1.015 - 1.018:
399         * dmd/lexer.c (escapeSequence): Change vendor string.
401         * dmd-script: Update documentation link
403         * dmd/attrib.c, dmd/cast.c, dmd/class.c, dmd/declaration.c,
404         dmd/dsymbol.c, dmd/expression.c, dmd/expression.h, dmd/func.c,
405         dmd/hdrgen.h, dmd/idgen.c, dmd/init.c, dmd/init.h, dmd/inline.c,
406         dmd/interpret.c, dmd/lexer.c, dmd/mars.c, dmd/mars.h,
407         dmd/module.c, dmd/mtype.c, dmd/mtype.h, dmd/optimize.c,
408         dmd/parse.c, dmd/scope.c, dmd/scope.h, dmd/statement.c,
409         dmd/statement.h, dmd/staticassert.c, dmd/template.c: Merge
411         * phobos/internal/dmain2.d, phobos/internal/gc/gcx.d,
412         phobos/internal/object.d, phobos/object.d, phobos/std/bind.d,
413         phobos/std/compiler.d, phobos/std/date.d, phobos/std/dateparse.d,
414         phobos/std/format.d, phobos/std/intrinsic.d, phobos/std/loader.d,
415         phobos/std/math2.d, phobos/std/metastrings.d, phobos/std/mmfile.d,
416         phobos/std/outbuffer.d, phobos/std/string.d,
417         phobos/std/windows/registry.d, phobos/win32.mak: Merge
419         ----
421         * gdc_alloca.h: Support OpenBSD. (Bugzilla 1065)
423         * patch-gcc-4.1.x (gcc/tree-sra.c): Do not use SRA
424         on structs with aliased fields created for anonymous
425         unions.  (Bugzilla 1034)
427 2007-07-19  David Friedman  <dvdfrdmn@users.sf.net>
429         * patch-gcc-4.1.x (gcc/predict.c): Add null-pointer check.
430         (Bugzilla 1035)
432         ---
434         * phobos/std/format.d (doFormatPtr): Fix accidental
435         reversion from DMD merge.
437         * d-codegen.cc (maybeSetUpBuiltin): Add some missing
438         instrinsics.
440         * phobos/Makefile.am (MAIN_OBJS): Add gcc.builtins
441         module to get built-instruct initializers.
443         * phobos/Makefile.in: Regenerated
445         * d-lang.cc (d_parse_file): Call d_gcc_magic_module
446         for each module on the command line.
448         * d-builtins2.cc (d_gcc_magic_builtins_module): output
449         declaration other than funcs
451 2007-07-16  David Friedman  <dvdfrdmn@users.sf.net>
453         * dmd/todt.c (StructLiteralExp::toDt): Use target_size_t
454         as in StructInitializer::toDt.
456         Bugzilla 1032:
458         * dmd/todt.c: Use DT_container for arrays, array elements,
459         and structs
461         * dt.h, d-objfile.cc: Add DT_container / dtcontainer
463 2007-07-14  David Friedman  <dvdfrdmn@users.sf.net>
465         * d-codegen.cc (ArrayScope::setArrayExp, finish): Handle
466         constant lengths.  (Bugzilla 1031)
468 2007-07-13  David Friedman  <dvdfrdmn@users.sf.net>
470         * d-codegen.cc (toElemLvalue): Use toElemLvalue recursively.
471         (Bugzilla 1191)
473         * d-codegen.cc (twoFieldCtor): Only set TREE_READONLY if
474         TREE_CONSTANT
476         * d-glue.cc (array_set_expr, AssocArrayLiteralExp::toElem,
477         (StructLiteralExp::toElem, NullExp::toElem):
478         Do not set TREE_READONLY.
480         * d-glue.cc (NewExp::toElem): Do not set TREE_READONLY on
481         new array dimensions.
483         * d-codegen.cc (darrayVal): Do not set TREE_READONLY.
484         (Bugzilla 1329)
486         (delegateVal): ditto
488         * d-codegen.cc (FieldVisitor::visit): Handle classes that
489         are forward references. (Bugzilla 1325)
491         * dmd-script: Pass -J option correctly. (SF 1721435)
493         * d-glue.cc (DeleteExp::toElem): Handle interfaces.
494         (SF 1721496)
496         * d-decls.cc (VarDeclaration::toSymbol): Handle void initializer.
497         (SF 1749622)
499         * d-glue.cc (AndAndExp, OrOrExp): Handle void second expression.
500         (SF 1689634)
502         * phobos/gcc/cbridge_time.c (_d_gnu_cbridge_tza): Remove
503         daylight saving time offset from tm_gmtoff (Bugzilla 1208)
505         * phobos/std/format.d (doFormat): Use original signature.  Actual
506         work is done by new doFormatPtr. (Bugzilla 1109)
508         * phobos/std/boxer.d: Use doFormatPtr
510 2007-07-11  David Friedman  <dvdfrdmn@users.sf.net>
512         * d-convert.cc (default_conversion): make public
513         (SF 1711324 and 1709602)
515         * d-apple-gcc.c (build_function_call): re-enable some code
517 2007-05-08  David Friedman  <dvdfrdmn@users.sf.net>
519         * d-apple-gcc.c: Remove a variable that is now defined in d-lang.c
521         * d-lang.cc: Fix for other GCC versions.
523         * d-c-stubs.c: New file.
525         * Make-lang.in (D_BORROWED_C_OBJS): Always use C_TARGET_OBJS.  Add
526         stubs for C compiler to allow linking target-specific preprocessor
527         defines.
529 2007-05-05  David Friedman  <dvdfrdmn@users.sf.net>
531         * d-codegen.cc (hwi2toli, getTargetSizeConst): Fix 2x wide int to
532         long int conversion.
534         * dmd/cast.c (implicitConvTo): Use GCC floating point
535         routines instead of native.
537         * d-gcc-real.cc (toInt): Correctly convert to long integer
539         * Make-lang.in (D_DMD_H): Add d-gcc-real.h
541         * phobos/internal/dgccmain2.d: Print newline after error message
543 2007-04-29  David Friedman  <dvdfrdmn@users.sf.net>
545         Merge DMD 1.014:
547         * dmd/aggregate.h, dmd/constfold.c, dmd/delegatize.c, dmd/enum.c,
548         dmd/enum.h, dmd/expression.c, dmd/expression.h, dmd/idgen.c,
549         dmd/inline.c, dmd/interpret.c, dmd/lexer.c, dmd/lexer.h,
550         dmd/mars.c, dmd/mtype.c, dmd/optimize.c, dmd/struct.c,
551         dmd/template.c, dmd/tocsym.c, dmd/todt.c, dmd/toobj.c,
552         dmd/typinf.c: Merge.
554         * phobos/internal/gc/gc.d, phobos/internal/gc/gcx.d,
555         phobos/std/format.d, phobos/std.ddoc: Merge.
557         * d-glue.d (StructLiteralExp::toElem): implement
558         * d-decls.d (EnumDeclaration::toInitializer): copy from tocsym.c
560         ------------
562         Merge DMD 1.013:
564         * dmd/cast.c, dmd/constfold.c, dmd/declaration.c,
565         dmd/expression.c, dmd/expression.h, dmd/interpret.c, dmd/link.c,
566         dmd/mars.c, dmd/mtype.c, dmd/opover.c, dmd/optimize.c,
567         dmd/parse.c, dmd/port.h, dmd/statement.c: Merge.
569         * phobos/internal/aaA.d, phobos/internal/switch.d,
570         phobos/std/date.d, phobos/std/file.d, phobos/std/format: Merge.
572         * d-codegen.h, d-codegen.cc: add _d_assocarrayliteralTp
573         * d-glue.cc (AssocArrayLiteralExp::toElem): Implement.
575         * phobos/internal/aaA.d (_d_assocarrayliteralT): modified
576         to use pointers to keys, values.
578         --------------
580         Merge DMD 1.012:
582         * arraytypes.h, dmd/declaration.c, dmd/delegatize.c,
583         dmd/expression.c, dmd/expression.h, dmd/init.c, dmd/init.h,
584         dmd/inline.c, dmd/interpret.c, dmd/lexer.c, dmd/lexer.h,
585         dmd/mangle.c, dmd/mars.c, dmd/optimize.c, dmd/template.c,
586         dmd/template.h: Merge
588         * phobos/internal/object.d: Merge
590         * dmd/template.c (TemplateInstance::mangle): printf portability
592         * d-glue.cc (AssocArrayLiteralExp::toElem): non-working implementation
594 2007-04-28  David Friedman  <dvdfrdmn@users.sf.net>
596         Merge DMD 1.011:
598         * dmd/access.c, dmd/aggregate.h, dmd/arraytypes.h, dmd/attrib.c,
599         dmd/attrib.h, dmd/bit.c, dmd/cast.c, dmd/class.c, dmd/complex_t.h,
600         dmd/cond.c, dmd/cond.h, dmd/constfold.c, dmd/declaration.c,
601         dmd/declaration.h, dmd/delegatize.c, dmd/doc.c, dmd/doc.h,
602         dmd/dsymbol.c, dmd/dsymbol.h, dmd/dump.c, dmd/entity.c,
603         dmd/enum.c, dmd/enum.h, dmd/expression.c, dmd/expression.h,
604         dmd/func.c, dmd/hdrgen.c, dmd/hdrgen.h, dmd/html.c, dmd/html.h,
605         dmd/identifier.c, dmd/identifier.h, dmd/idgen.c, dmd/impcnvgen.c,
606         dmd/import.c, dmd/import.h, dmd/inifile.c, dmd/init.c, dmd/init.h,
607         dmd/inline.c, dmd/interpret.c, dmd/lexer.c, dmd/lexer.h,
608         dmd/link.c, dmd/macro.c, dmd/macro.h, dmd/mangle.c, dmd/mars.c,
609         dmd/mars.h, dmd/module.c, dmd/module.h, dmd/mtype.c, dmd/mtype.h,
610         dmd/opover.c, dmd/optimize.c, dmd/parse.c, dmd/parse.h,
611         dmd/scope.c, dmd/scope.h, dmd/statement.c, dmd/statement.h,
612         dmd/staticassert.c, dmd/staticassert.h, dmd/struct.c,
613         dmd/template.c, dmd/template.h, dmd/tocsym.c, dmd/todt.c,
614         dmd/toir.c, dmd/toir.h, dmd/toobj.c, dmd/total.h, dmd/typinf.c,
615         dmd/unialpha.c, dmd/utf.c, dmd/utf.h, dmd/version.c, dmd/version.h:
616         Merge
618         * phobos/internal/gc/gc.d, phobos/internal/gc/gcx.d,
619         phobos/internal/object.d, phobos/std/c/locale.d,
620         phobos/std/stdio.d, phobos/std/windows/registry.d: Merge
622         * dmd/expression.c: Comment out some logging code.
623         * d-builtins2.cc: Update and fix handling of built-in structs.
624         * d-codegen.cc, d-glue.cc: Update
626         ----------------
628         Merge DMD 1.010:
630         * dmd/aggregate.h, dmd/class.c, dmd/declaration.c, dmd/doc.c,
631         dmd/dsymbol.c, dmd/expression.c, dmd/expression.h, dmd/func.c,
632         dmd/interpret.c, dmd/mars.c, dmd/scope.c, dmd/statement.c,
633         dmd/template.c, dmd/template.h, dmd/todt.c: Merge.
635         * phobos/internal/dmain2.d, phobos/internal/gc/gc.d,
636         phobos/internal/gc/gcx.d, phobos/internal/gc/testgc.d,
637         phobos/internal/object.d, phobos/object.d,
638         phobos/std/c/linux/linux.d, phobos/std/c/stdio.d,
639         phobos/std/file.d, phobos/std/gc.d, phobos/std/moduleinit.d,
640         phobos/std/regexp.d, phobos/std/stdio.d, phobos/std/string.d,
641         phobos/std.ddoc, phobos/win32.mak: Merge
643         * dmd/mtype.c, phobos/internal/dgccmain2.d: Update.
644         * d-glue.cc (gcc_d_backend_init): Update.
646         * phobos/config/unix-mid, phobos/std/c/unix/unix.d: Moved dirent
647         and stdio definitions out of configunix to std.c.unix.unix because
648         of compilation problems.
650         * phobos/internal/gc/gcx.d (GC.realloc, GC.extend, GC.free): Clear
651         gcx.p_cache
653         * phobos/std/stdio.d, phobos/frag-ac.in, phobos/configure.in:
654           Account for various configurations.
656         * phobos/phobos-ver-syms.in: Remove GNU_Have_fwide
657         * phobos/configure: Regenerate
659 2007-04-22  David Friedman  <dvdfrdmn@users.sf.net>
661         * d-gcc-includes.h, d-lang.cc: Add target-specific preprocessor
662         symbols to the list of D version symbols.
664         * d-glue.cc (NewExp::toElem): Use NewExp::newtype (Bugzilla 1038)
666 2007-04-16  David Friedman  <dvdfrdmn@users.sf.net>
668         Merge DMD 1.009 (from 1.007):
670         * d-decls.c: Merge changes from dmd/tocsym.c
672         * dmd/constfold.c, dmd/declaration.c, dmd/declaration.h,
673         dmd/expression.c, dmd/expression.h, dmd/init.c, dmd/interpret.c,
674         dmd/mangle.c, dmd/mars.c, dmd/mars.h, dmd/mtype.c,
675         dmd/optimize.c, dmd/statement.c, dmd/staticassert.c,
676         dmd/tocsym.c, dmd/todt.c: Merge changes.
678         * phobos/std/path.d, phobos/std/string.d: Merge changes.
680         ----
682         * d-builtins.c, d-builtins2.cc, d-lang.h: Reworked code to only
683         convert built-in functions when the gcc.builtins module is
684         imported.  RECORD_TYPE is now converted to a TypeStruct.  Fixed
685         problem that caused some functions to not be available.  Support
686         targets builtins.
688 2007-03-11  David Friedman  <dvdfrdmn@users.sf.net>
690         * d-decls.cc (ClassDeclaration::toSymbol): Do not set TREE_READONLY.
691         (Bugzilla 1037)
693 2007-03-10  David Friedman  <dvdfrdmn@users.sf.net>
695         * d-codegen.cc (call): Handle CommaExp form of a delegate call
696         (Bugzilla 1043)
698         * d-decls.cc (VarDeclaration::toSymbol): Partial fix for Bugzilla 1044
700         * dt.h, d-objfile.cc, dmd/typeinf.c: Only pad 32-bit words in RTTI if
701         needed. (Bugzilla 1045, 1046)
702         * dmd/toobj.c: update
704         * d-glue.cc, d-objfile.cc: Additional GCC 3.3.x cleanup
706         ----
708         * ChangeLog, History, Make-lang.in, asmstmt.cc, d-builtins.c,
709         d-codegen.cc, d-convert.cc, d-decls.cc, d-gcc-includes.h,
710         d-gcc-real.cc, d-glue.cc, d-gt.c, d-irstate.cc, d-lang.cc,
711         d-lang.h, d-misc.c, d-objfile.cc, d-spec.c, phobos/configure.in,
712         setup-gcc.sh: Remove support for GCC 3.3.x
714         * phobos/configure: Regenerated
716         * gcc-3.3.5-framework-headers.patch,
717         gcc-3.3.5-framework-linker.patch, patch-gcc-3.3.x,
718         patch-gcc-darwin-eh-3.3.x, patch-toplev-3.3.x,
719         phobos/config/ldfuncs33, phobos/config/noldfuncs33,
720         d-bi-attrs-33.h: Removed.
722 2007-03-05  David Friedman  <dvdfrdmn@users.sf.net>
724         Release GDC 0.23
726         * phobos/Makefile.am: Add all-local target to build libgphobos.a
727         * phobos/Makefile.in: Regenrated
729         PowerPC 64 fixes:
731         * d-glue.cc (TypeStruct:toCtype): Add words at the end of a struct.
733         * phobos/config/darwin8/frag-unix: More accurate struct definitions.
734         * phobos/internal/gc/gc_dyld.c: Support Mach-O 64.
735         * phobos/internal/gc/gcgcc.d: Correct stack for 64-bit Darwin.
736         * phobos/std/thread.d (getESP): Align result.
738 2007-03-04  David Friedman  <dvdfrdmn@users.sf.net>
740         Rest of DMD 1.007 Merge:
742         * package/simple.sh: Install GDC.html
744         * Make-lang.in (D_DMD_OBJS): add interpret.dmd.o
746         * gdc-version: update
748         * GDC.html, d-lang.cc, dmd-script, lang-specs.h, lang.opt,
749         patch-gcc-4.0.x, patch-gcc-4.1.x, patch-apple-gcc-4.0.x,
750         patch-gcc-3.4.x, patch-gcc-3.3.x: Add -J option.
752         * dmd/constfold.d, dmd/declaration.h, dmd/func.c: update
754         * d-glue.c: update
756         Initial merge of DMD 1.007 (from DMD 1.005):
758         * dmd/arraytypes.h, dmd/attrib.c, dmd/cond.c, dmd/constfold.c,
759         dmd/declaration.c, dmd/declaration.h, dmd/expression.c,
760         dmd/expression.h, dmd/func.c, dmd/idgen.c, dmd/init.c,
761         dmd/lexer.c, dmd/lexer.h, dmd/mars.c, dmd/mars.h, dmd/module.c,
762         dmd/mtype.c, dmd/opover.c, dmd/optimize.c, dmd/parse.c,
763         dmd/parse.h, dmd/statement.c, dmd/statement.h, dmd/template.c,
764         dmd/typinf.c: Merge
766         * phobos/internal/aApply.d, phobos/internal/aApplyR.d,
767         phobos/internal/adi.d, phobos/internal/dmain2.d,
768         phobos/internal/gc/gc.d, phobos/internal/gc/gcx.d,
769         phobos/internal/gc/win32.d, phobos/internal/object.d,
770         phobos/std/base64.d, phobos/std/c/string.d, phobos/std/c/time.d,
771         phobos/std/c/windows/com.d, phobos/std/c/windows/windows.d,
772         phobos/std/dateparse.d, phobos/std/demangle.d, phobos/std/file.d,
773         phobos/std/format.d, phobos/std/regexp.d, phobos/std/stdio.d,
774         phobos/std/stream.d, phobos/std/string.d, phobos/std/thread.d,
775         phobos/std/utf.d: Merge
777         * dmd/interpret.c: New file
779 2007-03-03  David Friedman  <dvdfrdmn@users.sf.net>
781         * phobos/std/c/darwin/darwin.d: Remove. (Bugzilla 984)
783         * phobos/std/date.d: Cleanup
785         * d-lang.cc: Evaluate BYTES_BIG_ENDIAN at runtime.
787         * d-codegen.cc: Cleanup.
789         * d-glue.cc: Initialize foreach key with zero, not default init.
791         * patch-gcc-4.0.x, patch-gcc-4.1.x, patch-apple-gcc-4.0.x:
792         Prevent emission of prologue and epilogue code for naked functions.
793         (Bugzilla 1013)
795 2007-03-02  David Friedman  <dvdfrdmn@users.sf.net>
797         * d-lang.cc: Test BYTES_BIG_ENDIAN at runtime.
799         * d-glue.cc (ForeachStatement::toIR): Initialize key to zero, not
800         defaultInit.
802         * patch-build_gcc-4.0, phobos/acinclude.m4, phobos/configure.in,
803         phobos/Makefile.am: Remove references to libgphobos.spec
805         * phobos/Makefile.in, phobos/configure: Regenerate
807         * patch-gcc-3.4.x, patch-gcc-3.3.x, patch-gcc-4.0.x,
808         patch-gcc-4.1.x, patch-apple-gcc-4.0.x: Support enabling
809         -pthread option by default without 'unrecognized option'
810         error message.
812         * d-spec.c (lang_specific_driver): Enable -pthread option
814         * phobos/libgphobos.spec.in: Remove
816 2007-02-28  David Friedman  <dvdfrdmn@users.sf.net>
818         * phobos/std/loader.d: Fix error
820 2007-02-27  David Friedman  <dvdfrdmn@users.sf.net>
822         * setup-gcc.sh: Create directory of links instead of a single
823         link.  No longer need to copy support files.
825         * target-ver-syms.sh: Support targets with both 32-bit and
826         64-bit modes.  Output preprocessor definitions instead of
827         command line otions.
829         * Make-lang.in: Put target-ver-syms.sh output in d-confdefs.h.
831         * package/simple.sh: Handle multilib.
833         * phobos/configure.in: Use Automake, multilib.
834         * phobos/Makefile.am: New file.
835         * phobos/acinclude.m4: Fix quoting.
837         * phobos/Makefile.in, phobos/configure: regenerated
839         * patch-gcc-3.3.x, patch-gcc-3.4.x, patch-gcc-4.0.x,
840           patch-gcc-4.1.x, lang-specs.h: Add %N spec code.
842         * patch-build_gcc-4.0: Grab 64-bit libgphobos.a
844         * dt.h, d-objfile.cc
845         (dt_size): Change return type to target_size_t.  Use target_size_t.
846         (dtnzeros, dtdword, dtxoff): Change count to target_size_t
847         (dtabytes, dtnbytes, dtawords, dtnwords, dtnbits): Change count to size_t
848         (dti32): added
850         * d-todt.cc: Cleanup.
852         * d-objfile.cc:
853         (dt2node): use Type::tsize_t for DT_word and DT_xoff
855         * d-glue.cc:
856         (PtrExp::toElem): Use target_size_t for offset
857         (gcc_d_backend_init): Set CLASSINFO_SIZE and Tindex.
858         (AssignExp::toElem): Use tsize_t for _d_arraycopy arg
859         (CaseStatement::toIR): (not really a 64-bit change) Use int32 for
860         case value to match libcall
861         (CatAssignExp::toElem): cleanup (not 64-bit)
862         (ForeachStatement::toIR): fix bug in key increment expression
864         * d-codegen.{cc,h}
865         (AggLayout::addField): use target_size_t for offset
867         * d-codegen.cc:
868         (...): LIBCALL_ARRAYCAST: Use size_t args (libcall already uses size_t)
869         LIBCALL_ARRAYCOPY: ditto
870         (convertTo): Use Type::tsize_t for _d_arraycat arguments
872         * d-decls.cc
873         (ClassDeclaration::toVtblSymbol): Use Type::tindex for array size.
874         (FuncDeclaration::toThunkSymbol): Use target_ptrdiff_t
876         * lang.opt: add -fmultilib-dir
878         * d-lang.cc: Use -fmultilib-dir
880         (d_init): Set global.params.isX86_64 if TARGET_64BIT.
881         Set CPU version symbol according to TARGET_64BIT.
882         Remove BitsPerPointer and BitsPerWord version symbols.
884         * d-builtins2.cc
885         (d_gcc_magic_builtins_module): Change "abi" integer types
886         to "C".  Add "pointer" integer types.
887         (gcc_type_to_d_type): Use Type::tindex for array types.  Use whole
888         back-end size.
890         * symbol.h
891         (Thunk): Use target_ptrdiff_t for offset.
893         * dmd/mars.h: Define target_size_t and target_ptrdiff_t to allow use of
894         32-bit size-tracking variables when generating 32-bit code.
896         * dmd/aggregate.h:
897         (CLASSINFO_SIZE) change to 'extern int' %%....
898         * dmd/cast.d: Use target_ptrdiff_t with isBaseOf.
900         * dmd/class.c:
901         (ClassDeclaration::semantic): use PTRSIZE
902         (InterfaceDeclaration::semantic): Use sc->offset = PTRSIZE * 2 instead of
903         8 -- not sure what this is for...
905         * dmd/dsymbol.[ch]
906         (Dsymbol::size): Change to target_size_t
908         * dmd/init.h: ArrayInitializer::dim <- chg to target_size_t
910         * dmd/aggregate.h: Use target_ptrdiff_t and target_size_t
912         * dmd/typinf.c (TypeInfoStructDeclaration::toDt): Use dti32 for flags.
913         * dmd/toobj.c (Module::genmoduleinfo, ClassDeclaration::toObjFile,
914         InterfaceDeclaration::toObjFile): ditto
916         * dmd/func.c: Use target_ptrdiff_t with isBaseOf.
917         (NewDeclaration::semantic): Allow Type::tuns64 if 64-bit.
919         * dmd/mtype.c
920         (Type::init): set CLASSINFO_SIZE
921         (Type::dotExp): use Type::tsize_t for .offsetof property
922         (TypeArray::dotExp): use Type::tsize_t for _adReverse args
923         (TypeAArray::dotExp): use PTRSIZE to align keysize
924         (TypeStruct::dotExp): use Type::tsize_t for offset
925         (TypeStruct::alignsize): use target_size_t
927         * dmd/mtype.h: Add Tindex global variable.
928         (Type): Change tindex to baseic[Tindex].
929         (Type::isBaseOf): use target_ptrdiff_t
931         * dmd/expression.[ch]:
932         (SymOffExp): offset changed to target_size_t
933         (NewExp::semantic): use size_t as argument
934         (ArrayLiteralExp::toMangleBuffer, SymOffExp::toCBuffer): fix printf
936         * dmd/declaration.c
937         (VarDeclaration::semantic): use sinteger_t for dim
939         * dmd/declaration.h:
940         (Declaration::size): Use target_size_t
941         (VarDeclaration): Use target_size_t for offset
943         * dmd/schope.h:
944         (Scope::offset) Use target_size_t.
946         * dmd/statement.c:
947         (ForeachStatement::semantic): Change return value of _a*Apply* to
948         Type::tint32.  Fix logic for allowed index variable types.
949         Use PTRSIZE to align keysize.
951         * dmd/struct.c
952         (AggregateDeclaration::addField): use target_size_t
954         * dmd/todt.c
955         (StructInitializer::toDt): Use target_size_t for offsets
956         (ClassDeclaration::toDt2): Use PTRSIZE
958         * phobos/object.d, phobos/internal/object.d:
959         (Interface): Use ptrdiff_t for offset.
960         (*.toHash): cast pointer to size_t
962         * phobos/internal/object.d: Use integer type definitions from
963         phobos/object.d.  Split %.*s args.
965         * phobos/internal/adi.d:
966         (_adReverse): Use size_t for szelem.
967         * phobos/configure.in: fix multilib dir
968         * phobos/configure: updated
970         * phobos/config/cb_unix.c: Removed.
972         * phobos/config/gen_config1.c: Add ssize_t.
974         * phobos/config/config-head: Use __builtin_Clong and __builtin_Culong.
975         * phobos/config/config-mid: Support X86_64 and other 64-bit CPUs.
976         * phobos/config/unix-mid: Some size_t and ssize_t arg/return type fixes.
978         * phobos/config/darwin8/frag-gen, phobos/config/darwin8/frag-unix:
979         Support 32- and 64-bit.
980         * phobos/config/mingw/frag-unix, phobos/config/skyos/frag-unix:
981         Add ssize_t.
983         * phobos/gcc/builtins.d: Update documentation
985         * phobos/gcc/unwind.d: Use different builtin integer types.
987         * phobos/internal/arraycat.d (_d_arraycopy): use size_t arg
989         * phobos/std/c/fenv.d: Add field for 64-bit Linux.
991         * phobos/std/c/linuxextern.d: Use C long for timezone.
993         * phobos/std/c/stdio.d,
994           phobos/std/c/stdlib.d, phobos/std/c/math.d,
995           phobos/std/c/time.d: use C long types
997         * phobos/std/stdint.d: Add C long types.
998         Use ptrdiff_t and size_t for *intptr_t types.
1000         * phobos/std/format.d: Formatting structs on X86_64 looses
1002         * phobos/internal/cast.d (_d_isbaseof2): change offset to size_t
1004         * phobos/internal/fpmath.d: Support 64-bit CPUs.
1006         * phobos/std/file.d: Type of stat.st_size may vary; use auto.
1007         (Unix read): Make sure file's size is within range.
1009         * phobos/crc32.d, phobos/gcstats.d,
1010         phobos/internal/qsortg.d:
1011         phobos/internal/gc/gc.d (_d_arraycatnT),
1012         phobos/internal/gc/gcold.d (_d_arraycatn),
1013         phobos/internal/gc/gcx.d,
1014         phobos/internal/mars.h,
1015         phobos/std/base64.d, phobos/std/bitarray.d, phobos/std/math.d,
1016         phobos/std/math2.d, phobos/std/md5sum.d, phobos/std/outbuffer.d,
1017         phobos/std/path.d, phobos/std/string.d, phobos/std/uri.d
1018         phobos/std/typeinfo/ti_AC.d,
1019         use size_t, ptrdiff_t/ssize_t
1021         * phobos/std/loader.d: Add definitions for 64-bit Mach-O objects.
1023         * phobos/std/openrj.d, phobos/std/loader.d, phobos/std/moduleinit.d,
1024         phobos/std/socket.d, phobos/std/regexp.d, phobos/std/uri.
1025         d, phobos/std/zip.d: split '%.*s' args
1027         * phobos/std/typeinfo/ti_A*.d, phobos/std/typeinfo/ti_ptr.d:
1028         fix compare methods
1030         * phobos/internal/gc/gc_dyld.c: use uintptr_t
1032         * phobos/std/c/stdio.d, phobos/internal/gc/gcgcc.d:
1033         Don't use old version symbols.
1035         * phobos/std/c/mach/mach.d (natural_t): always a uint
1037         * phobos/etc/c/zlib.d: use Culog_t
1039 2007-02-13  David Friedman  <dvdfrdmn@users.sf.net>
1041         * setup-gcc.sh: Copy the removed files from the top-level
1042         directory.
1044 2007-02-10  David Friedman  <dvdfrdmn@users.sf.net>
1046         * phobos/config.guess, phobos/config.sub, phobos/install-sh:
1047         Remove files.
1049         * phobos/std/format.d (putAArray): account for
1050         alignment of the value
1052         * phobos/Makefile.in: fix metastrings.o
1054 2007-02-09  David Friedman  <dvdfrdmn@users.sf.net>
1056         * phobos/std/format.d (doFormat): use aligntsize
1058         Rest of DMD 1.005 merge:
1060         * phobos/Makefile.in (MAIN_OBJS): add metastrings.o
1062 2007-02-08  David Friedman  <dvdfrdmn@users.sf.net>
1064         * d-lang.cc, lang.opt: support -v1 option
1066         * lang.opt (d_init_options): set global.params.Dversion
1068         * dmd-script: -v1 -> -fd-version=1
1070         * phobos/std/format.d (doFormat): Fix for var args differences
1072         Initial merge of DMD 1.005:
1074         dmd/attrib.c, dmd/attrib.h, dmd/cast.c, dmd/cond.c,
1075         dmd/constfold.c, dmd/dsymbol.c, dmd/dsymbol.h, dmd/expression.c,
1076         dmd/expression.h, dmd/func.c, dmd/idgen.c, dmd/inline.c,
1077         dmd/lexer.c, dmd/lexer.h, dmd/mars.c, dmd/module.c, dmd/mtype.c,
1078         dmd/mtype.h, dmd/optimize.c, dmd/parse.c, dmd/parse.h,
1079         dmd/scope.c, dmd/statement.c, dmd/statement.h, dmd/template.c,
1080         dmd/template.h, dmd/toobj.c, dmd/typinf.c: Merge.
1082         phobos/internal/aaA.d, phobos/internal/gc/gc.d,
1083         phobos/internal/object.d, phobos/linux.mak, phobos/std/c/stdlib.d,
1084         phobos/std/conv.d, phobos/std/ctype.d, phobos/std/format.d,
1085         phobos/std/regexp.d, phobos/std/zlib.d, phobos/std.ddoc,
1086         phobos/win32.mak: Merge.
1088         phobos/std/metastrings.d: New file
1090 2007-02-05  David Friedman  <dvdfrdmn@users.sf.net>
1092         Release GDC 0.22
1094         * d-codegen.cc (twoFieldType): Fix back end -> front end type
1095         mapping.
1097         * Make-lang.in: Enable ELFOBJ to put some RTTI in the read-only
1098         data section.
1100         * GDC.html: Update
1102 2007-02-04  David Friedman  <dvdfrdmn@users.sf.net>
1104         * phobos/gcc/cbridge_time.c (_d_gnu_cbridge_tza),
1105         phobos/std/date.d: Fix timezone adjust sign
1107 2007-02-03  David Friedman  <dvdfrdmn@users.sf.net>
1109         * phobos/config/unix-mid: Correctly initialize sockaddr*
1110         (Bugzilla 818)
1112         * dmd-script: Fix -H* options (Bugzilla 896).
1113         Support -framework. Fix error message.
1115         * d-lang.cc (d_write_global_declarations), patch-gcc-4.1.x:
1116         Fixes for dwarf2out ICEs
1118         * d-objfile.cc (check_static_sym): Fix setting TREE_CONSTANT.
1120         Rest of DMD 1.004 merge:
1122         * gcc-mars.cc, gdc-version: Update
1124         * phobos/std/regexp.d: update
1126         * phobos/internal/gc/gcold.d (_d_newarrayip):
1128         * phobos/internal/gc/gc.d: Fix argument and result types.
1130         * phobos/config/unix-head, phobos/config/unix-mid: Update
1132         * phobos/Makefile.in: Update for files removed in DMD 1.004
1134         * d-decls.cc (TypedefDeclaration::toInitializer): Copy
1135         from dmd/tocsym.c.  Create the Sdt here.
1137         * dmd/toobj.c (TypedefDeclaration::toObjFile): Update
1138         for toInitializer change
1140         * dmd/mtype.c (TypeArray::dotExp): Fix library call decls
1142         * d-lang.cc: Update
1144         * d-codegen.[ch], d-glue.cc: Update memory allocation library
1145         calls.
1147         * d-lang.cc (d_write_global_declarations): call
1148         emit_debug_global_declarations only for GCC 4.0
1150         * dmd/mtype.c (TypeArray::dotExp): update
1152         * phobos/config/unix-head, phobos/config/unix-mid: update
1154         * phobos/internal/gc/gcold.d: Use old GDC modifications.
1156 2007-02-02  David Friedman  <dvdfrdmn@users.sf.net>
1158         Initial merge DMD 1.004:
1160         * dmd/aggregate.h, dmd/attrib.c, dmd/attrib.h, dmd/declaration.c,
1161         dmd/declaration.h, dmd/dsymbol.c, dmd/dsymbol.h, dmd/expression.c,
1162         dmd/import.c, dmd/import.h, dmd/inline.c, dmd/mars.c, dmd/mars.h,
1163         dmd/module.c, dmd/module.h, dmd/mtype.c, dmd/mtype.h,
1164         dmd/struct.c, dmd/template.c, dmd/template.h, dmd/tocsym.c,
1165         dmd/todt.c, dmd/toobj.c, dmd/typinf.c: Merge DMD 1.004
1167         * phobos/internal/aaA.d, phobos/internal/adi.d,
1168         phobos/internal/arraycast.d, phobos/internal/arraycat.d,
1169         phobos/internal/gc/gc.d, phobos/internal/gc/gcx.d,
1170         phobos/internal/gc/linux.mak, phobos/internal/gc/win32.mak,
1171         phobos/internal/object.d, phobos/linux.mak, phobos/object.d,
1172         phobos/std/c/linux/linux.d, phobos/std/compiler.d,
1173         phobos/std/file.d, phobos/std/gc.d, phobos/std/outbuffer.d,
1174         phobos/std/random.d, phobos/std/regexp.d,
1175         phobos/std/typeinfo/ti_AC.d, phobos/std/typeinfo/ti_Acdouble.d,
1176         phobos/std/typeinfo/ti_Acfloat.d, phobos/std/typeinfo/ti_Acreal.d,
1177         phobos/std/typeinfo/ti_Adouble.d, phobos/std/typeinfo/ti_Afloat.d,
1178         phobos/std/typeinfo/ti_Ag.d, phobos/std/typeinfo/ti_Aint.d,
1179         phobos/std/typeinfo/ti_Along.d, phobos/std/typeinfo/ti_Areal.d,
1180         phobos/std/typeinfo/ti_Ashort.d, phobos/std/typeinfo/ti_C.d,
1181         phobos/std/typeinfo/ti_cdouble.d, phobos/std/typeinfo/ti_cfloat.d,
1182         phobos/std/typeinfo/ti_char.d, phobos/std/typeinfo/ti_creal.d,
1183         phobos/std/typeinfo/ti_dchar.d, phobos/std/typeinfo/ti_delegate.d,
1184         phobos/std/typeinfo/ti_double.d, phobos/std/typeinfo/ti_float.d,
1185         phobos/std/typeinfo/ti_ptr.d, phobos/std/typeinfo/ti_real.d,
1186         phobos/std/typeinfo/ti_void.d, phobos/std/typeinfo/ti_wchar.d,
1187         phobos/win32.mak: Merge DMD 1.004
1189         * phobos/std/typeinfo/ti_Aa.d, phobos/std/typeinfo/ti_Adchar.d,
1190         phobos/std/typeinfo/ti_Aubyte.d, phobos/std/typeinfo/ti_Auint.d,
1191         phobos/std/typeinfo/ti_Aulong.d, phobos/std/typeinfo/ti_Aushort.d,
1192         phobos/std/typeinfo/ti_Awchar.d: Removed in DMD 1.004
1194         * phobos/internal/gc/gcold.d: New in DMD 1.004
1196 2007-02-01  David Friedman  <dvdfrdmn@users.sf.net>
1198         * d-lang.cc (d_write_global_declarations): Emit debug info.
1200         * d-codegen.cc (twoFieldType): Fix debugging information.
1201         * d-objfile.cc (initTypeDecl): Ditto.
1203         * d-glue.cc (PtrExp::toElem): Don't wrap the result in
1204         a NOP_EXPR.
1206         * Make-lang.in: Add d-tree.def to dependencies
1208 2007-01-30  David Friedman  <dvdfrdmn@users.sf.net>
1210         GCC 4.1.x changes:
1212         * GDC.html, INSTALL, INSTALL.html, README: update
1214         * dmd/idgen.c, dmd/impcnvgen.c, dmd/mtype.h: Change to allow
1215         compilation as C.
1217         * patch-gcc-4.1.x, patch-toplev-4.1.x: New files
1219         * Make-lang.in: Use $(version) instead of $(gcc_version).
1220         Add d-bi-attrs-41.h.  Use C for generator programs instead of C++.
1222         * d-bi-attrs-41.h: New file.
1224         * d-builtins.c: update
1226         * d-builtins2.cc: Do not associate d_gcc_builtin_va_list_d_type with
1227         va_list_type_node.  Do this for GCC 4.0 and 4.1.
1229         * d-codegen.cc: Use CtorEltMaker.
1230         (maybeExpandSpecialCall): Cast d_gcc_builtin_va_list_d_type to
1231         va_list_type_node.
1232         (hostToTargetString): Update.
1234         * d-codegen.h: Add CtorEltMaker class for before/after 4.1.x
1235         compatibility.
1237         * d-convert.cc: Add special case for pointer/int comparison
1239         * d-decls.cc: Do not use SET_DECL_ASSEMBLER_NAME for CONST_DECLs
1241         * d-gcc-includes.h: Include vec.h
1243         * d-glue.cc: Use CtorEltMaker.
1244         (gcc_d_backend_init): Call default_init_unwind_resume_libfunc
1246         * d-lang.cc: Add d_types_compatible_p hook for va_list conversion
1248         * d-lang.h: Update
1250         * d-objfile.cc: CtorEltMaker.
1252         * phobos/std/conv.d: Do not assume signed integer wraparound.
1254 2007-01-28  David Friedman  <dvdfrdmn@users.sf.net>
1256         * d-asm-i386.h, d-codegen.cc, d-gcc-real.cc,
1257         d-decls.cc, d-glue.cc, d-lanc.cc: various fixes
1259         * d-codegen.cc, d-codegen.h, d-glue.cc, d-lang.h:
1260         Remove bit array code
1262 2007-01-27  David Friedman  <dvdfrdmn@users.sf.net>
1264         * d-asm-i386.h: fix fistp, lmsw, lldt, mov[sz]x, setCC, smsw, and
1265         sldt instructions (Bugzilla 836, 837, 838, 839, 841, 843, 844).
1266         Also r[co][lr].
1268         * d-glue.cc (StringExp::toElem): Correct termination of wchar
1269         and dchar (Bugzilla 889)
1271 2007-01-11  David Friedman  <dvdfrdmn@users.sf.net>
1273         * INSTALL.html: fix corruption
1275 2007-01-03  David Friedman  <dvdfrdmn@users.sf.net>
1277         Release GDC 0.21
1279         * GDC.html: New file.
1281         * README: Update, refer to GDC.html
1283         Rest of DMD 1.00 merge:
1285         * d-codegen.cc: Patch from Anders Bjšrklund for GCC 3.3
1287         * d-glue.cc (FuncDeclaration::toObjFile): Fix shouldDefer/outputStage
1288         logic.
1290         * dmd/attrib.c (PragmaDeclaration::semantic): uint -> unsigned
1292         * dmd/module.c (load): output to stdmsg
1294         * dmd/mtype.c: revert '@' mangling changes
1296         * gdc-version, gcc-mars.cc: update
1298         * phobos/config/unix-mid: Support more functions
1300         * phobos/acinclude.m4, phobos/config/gen_unix.c (c_pthread):
1301         Support more types
1303         * phobos/configure, phobos/config.h.in: update
1305         * phobos/config/darwin8/frag-unix: update
1307         Initial merge of DMD 1.00:
1309         * dmd/cond.c, dmd/constfold.c, dmd/delegatize.c, dmd/dsymbol.c,
1310         dmd/enum.c, dmd/expression.c, dmd/expression.h, dmd/init.c,
1311         dmd/inline.c, dmd/mars.c, dmd/module.c, dmd/module.h, dmd/mtype.c,
1312         dmd/parse.c, dmd/statement.c, dmd/struct.c, dmd/template.c,
1313         dmd/todt.c: Merge 1.00
1315         * internal/gc/gc.d, phobos/linux.mak,
1316         phobos/std/c/linux/linux.d.orig-dmd, phobos/std/c/stdlib.d,
1317         phobos/std/conv.d, phobos/win32.mak: Merge 1.00
1319         * phobos/std/c/linux/pthread.d.orig-dmd: New file (originally
1320         pthread.d DMD)
1322         ------------------------
1324         * dmd/init.c (ArrayInitializer::semantic),
1325         * dmd/root.c (OutBuffer::write4): 64-bit host cleanup
1327         * d-asm-i386.h: cleanup, saftey
1329 2007-01-02  DF  <dvdfrdmn@users.sf.net>
1331         * d-codegen.cc (convertTo): Use 64-bit for Tarray, Tsarray conversion.
1333         * d-codegen.{h, cc} (darrayVal): use uinteger_t arg
1336 Copyright (C) 2007 Free Software Foundation, Inc.
1338 Copying and distribution of this file, with or without modification,
1339 are permitted in any medium without royalty provided the copyright
1340 notice and this notice are preserved.