Commit Graph

1631 Commits

Author SHA1 Message Date
Robert Clipsham
daa102a5cd Merge dmd 1.056. 2010-02-06 15:53:52 +00:00
Christian Kamm
8176222719 Disable appending a dchar to a char or wchar array for now.
See [1605] for details.
2010-01-06 19:53:35 +01:00
Leandro Lucarella
cae60aa406 Merge DMD r324: bugzilla 3663 and 3664 - fwd ref regressions
---
 dmd/class.c  |    2 +-
 dmd/enum.c   |    4 +++-
 dmd/enum.h   |    2 ++
 dmd/mars.c   |    2 +-
 dmd/struct.c |    5 ++++-
 5 files changed, 11 insertions(+), 4 deletions(-)
2010-01-06 15:18:23 -03:00
Leandro Lucarella
003f306cba Merge DMD r321: bugzilla 3575 CTFE: member structs not initialized correctly
---
 dmd/expression.c |    4 +---
 dmd/interpret.c  |   32 +++++++++-----------------------
 dmd/mtype.c      |   48 +++++++++++++++++++++++++++++++++++++++++++-----
 dmd/mtype.h      |    2 ++
 4 files changed, 55 insertions(+), 31 deletions(-)
2010-01-06 15:18:23 -03:00
Leandro Lucarella
e7323517b0 Merge DMD r320: refactor
---
 dmd/expression.c |    7 +++----
 dmd/expression.h |    2 +-
 dmd/mtype.c      |   34 ++++++++--------------------------
 3 files changed, 12 insertions(+), 31 deletions(-)
2010-01-06 15:18:23 -03:00
Leandro Lucarella
c7aa3426b3 Merge DMD r319: bugzilla 400 forward reference error...
bugzilla 400 forward reference error; no propety X for type Y (struct
within struct).
---
 dmd/class.c  |   19 +++++++++++++++++--
 dmd/struct.c |   16 ++++++++++++++++
 2 files changed, 33 insertions(+), 2 deletions(-)
2010-01-06 15:18:22 -03:00
Leandro Lucarella
063c55f49f Merge DMD r318: bugzilla 2029 Typesafe variadic functions don't...
bugzilla 2029 Typesafe variadic functions don't work in CTFE.
---
 dmd/aggregate.h |    1 +
 dmd/struct.c    |   16 ++++++++++++++++
 2 files changed, 17 insertions(+), 0 deletions(-)
2010-01-06 15:18:22 -03:00
Leandro Lucarella
edb33b00ee Merge DMD r317: bugzilla 3611 Enum forward referencing regression
---
 dmd/enum.c  |   17 +++++++++++++++--
 dmd/mtype.c |    4 ++++
 2 files changed, 19 insertions(+), 2 deletions(-)
2010-01-06 15:18:22 -03:00
Leandro Lucarella
9ae38b1d03 Merge DMD r316: bugzilla 3628 can't cast null to int
---
 dmd/constfold.c |    2 +-
 dmd/optimize.c  |    8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)
2010-01-06 15:18:22 -03:00
Leandro Lucarella
b9896b9034 Merge DMD r314+r315: bugzilla 2029 Typesafe variadic functions don't...
Both DMD revisions are for fixing bugzilla 2029 (Typesafe variadic
functions don't work in CTFE).

The DMD r314 commit message is:
bugzilla 2029 (Typesafe variadic functions don't work in CTFE

The DMD r315 commit message is:
bugzilla 2029 - try again
---
 dmd/constfold.c   |   11 ++++-
 dmd/declaration.c |   21 +++++++++-
 dmd/declaration.h |   10 ++++-
 dmd/expression.c  |    1 +
 dmd/interpret.c   |  111 +++++++++++++++++++++++++++++++++++++++++++++--------
 dmd/mars.h        |    2 +-
 dmd/mtype.c       |    2 +-
 7 files changed, 135 insertions(+), 23 deletions(-)
2010-01-06 15:18:22 -03:00
Leandro Lucarella
3fc72b7ec3 Merge DMD r310: bugzilla 3645 manifest constant (enum) crashes dmd
---
 dmd/interpret.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)
2010-01-06 15:18:22 -03:00
Leandro Lucarella
4d74a325fc Merge DMD r304: refactor invariant => immutable
---
 dmd/cast.c        |    2 +-
 dmd/declaration.c |    2 +-
 dmd/declaration.h |    3 +--
 dmd/doc.c         |    2 +-
 dmd/expression.c  |    6 +++---
 dmd/interpret.c   |    4 ++--
 dmd/mtype.c       |    2 +-
 dmd/mtype.h       |    2 +-
 dmd/parse.c       |    4 ++--
 dmd/struct.c      |    2 +-
 10 files changed, 14 insertions(+), 15 deletions(-)
2010-01-06 15:18:22 -03:00
Leandro Lucarella
6e61ecee6b Merge DMD r303: harmonize
---
 dmd/expression.c |   78 ++++++++++++++++++++++++++++++++++++++++++++++++-----
 dmd/expression.h |    8 +++++
 dmd/template.c   |   27 ++++++++++++-------
 3 files changed, 95 insertions(+), 18 deletions(-)
2010-01-06 15:18:21 -03:00
Leandro Lucarella
072ac6c4e3 Merge DMD r301: a little refactor and harmonize
---
 dmd/declaration.h |    1 +
 dmd/func.c        |   30 ++++++++++++++++++++++++++++++
 dmd/mtype.c       |   51 +++++++++++++++++++++++++++++++++++++--------------
 3 files changed, 68 insertions(+), 14 deletions(-)
2010-01-06 15:18:21 -03:00
Leandro Lucarella
2cdf1f6679 Merge DMD r296: bugzilla 3617 CTFE: wrong code for if(x) where x is int...
bugzilla 3617 CTFE: wrong code for if(x) where x is int or smaller.
---
 dmd/expression.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)
2010-01-06 15:18:21 -03:00
Leandro Lucarella
9eba8c9f32 Merge DMD r294: bugzilla 2816 Sudden-death static assert is not...
bugzilla 2816 Sudden-death static assert is not very useful.
---
 dmd/expression.h   |   12 ++++++
 dmd/staticassert.c |   10 +---
 dmd/template.c     |  108 ++++++++++++++++++++++++++++++++++++++++++++++++----
 dmd/template.h     |    2 +
 4 files changed, 117 insertions(+), 15 deletions(-)
2010-01-06 15:18:21 -03:00
Leandro Lucarella
d6891f8f24 Merge DMD r292: bugzilla 3455 Some Unicode characters not allowed...
bugzilla 3455 Some Unicode characters not allowed in identifiers.
---
 dmd/lexer.c |   34 ++++++++++++++++++++++------------
 1 files changed, 22 insertions(+), 12 deletions(-)
2010-01-06 15:18:21 -03:00
Leandro Lucarella
4aec0677b7 Merge DMD r286: remove dead code
---
 dmd/interpret.c |   49 ++-----------------------------------------------
 dmd/mars.c      |    2 +-
 2 files changed, 3 insertions(+), 48 deletions(-)
2010-01-06 15:18:21 -03:00
Leandro Lucarella
ddb0f3f209 Merge DMD r278: bugzilla 370 Compiler stack overflow on recursive...
bugzilla 370 Compiler stack overflow on recursive typeof in function
declaration.
---
 dmd/expression.c |    1 +
 dmd/mtype.c      |    7 +++++--
 2 files changed, 6 insertions(+), 2 deletions(-)
2010-01-06 15:18:21 -03:00
Leandro Lucarella
08a4454919 Merge DMD r277: bugzilla 3495 Segfault(typinf.c) instantiating D variadic...
bugzilla 3495 Segfault(typinf.c) instantiating D variadic function with
too few arguments.
---
 dmd/expression.c |   11 ++++++-----
 1 files changed, 6 insertions(+), 5 deletions(-)
2010-01-06 15:18:21 -03:00
Leandro Lucarella
cdd1d546a7 Merge DMD r276: bugzilla 2229 ICE(template.c) instantiating an invalid...
bugzilla 2229 ICE(template.c) instantiating an invalid variadic template
with more than one argument.
---
 dmd/template.c |    7 ++++++-
 1 files changed, 6 insertions(+), 1 deletions(-)
2010-01-06 15:18:21 -03:00
Leandro Lucarella
77f256536f Merge DMD r274: harmonization
---
 dmd/expression.c |   62 +++++++++++++++++++++++++++++++++++++++++++++++++++++-
 dmd/template.c   |   41 +++++++++++++++++++++++++++++++++++
 dmd/template.h   |    1 +
 3 files changed, 103 insertions(+), 1 deletions(-)
2010-01-06 15:18:21 -03:00
Leandro Lucarella
fa910e3648 Merge DMD r262: bugzilla 3381 ([tdpl] Incorrect assessment of ...)
The full bug title is: [tdpl] Incorrect assessment of overriding in
triangular-shaped hierarchy.
---
 dmd/class.c |    2 +-
 dmd/func.c  |    2 ++
 2 files changed, 3 insertions(+), 1 deletions(-)
2010-01-06 15:18:20 -03:00
Leandro Lucarella
357dc9c1a9 Merge DMD r253: refactor: Argument => Parameter
---
 dmd/arrayop.c     |   30 ++++----
 dmd/arraytypes.h  |    2 +-
 dmd/class.c       |    8 +-
 dmd/declaration.c |   10 ++--
 dmd/declaration.h |   16 ++--
 dmd/doc.c         |   12 ++--
 dmd/dsymbol.c     |    4 +-
 dmd/expression.c  |   48 +++++++-------
 dmd/expression.h  |   32 +++++-----
 dmd/func.c        |   78 +++++++++++-----------
 dmd/init.c        |    2 +-
 dmd/interpret.c   |    8 +-
 dmd/mtype.c       |  190 ++++++++++++++++++++++++++--------------------------
 dmd/mtype.h       |   32 +++++-----
 dmd/opover.c      |   34 +++++-----
 dmd/parse.c       |   40 ++++++------
 dmd/parse.h       |    2 +-
 dmd/statement.c   |   90 +++++++++++++-------------
 dmd/statement.h   |   14 ++--
 dmd/struct.c      |    8 +-
 dmd/template.c    |   30 ++++----
 gen/functions.cpp |   10 ++--
 gen/functions.h   |    2 +-
 gen/tocall.cpp    |   10 ++--
 gen/typinf.cpp    |    6 +-
 25 files changed, 359 insertions(+), 359 deletions(-)
2010-01-06 15:18:20 -03:00
Leandro Lucarella
68d53eb635 Use just \n as end of line
---
 dmd/arraytypes.h   |  102 ++++----
 dmd/enum.c         |  652 ++++++++++++++++++++++++++--------------------------
 dmd/parse.h        |  292 ++++++++++++------------
 dmd/staticassert.c |  240 ++++++++++----------
 4 files changed, 643 insertions(+), 643 deletions(-)
2010-01-06 15:18:19 -03:00
Leandro Lucarella
f5ff6b1c57 [WIP] Merge DMD r251: bugzilla 111 (appending a dchar to a char[])
This patch needs some work in the code generation, because of the runtime
changes (functions "_d_arrayappendcd" and "_d_arrayappendwd" are added).

This doesn't affect existing code though, it just makes with patch
a little useless, because something like this:
    char [] s;
    s ~= '\u6211';
That failed to compile with a nice error message previously to this
change, now fails with and ugly error message (a failed assertion).

Apparently there is a regression introduced by this patch too, when
compiling Dil I get this assertion message:

ldc: /home/luca/tesis/ldc/gen/statements.cpp:132: virtual void ReturnStatement::toIR(IRState*): Assertion `p->topfunc()->getReturnType() == llvm::Type::getVoidTy(gIR->context())' failed.
0   ldc 0x08a91628

Thank god we have bisecting capabilities in VCSs now ;)
---
 dmd/expression.c |   47 +++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 41 insertions(+), 6 deletions(-)
2010-01-06 15:18:19 -03:00
Leandro Lucarella
eb886e4b5e Merge DMD r250: harmonize
---
 dmd/expression.c |  133 ++++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 95 insertions(+), 38 deletions(-)
2010-01-06 15:18:19 -03:00
Leandro Lucarella
09fb49c546 Merge DMD r248: implement Denis Koroskin's macro suggestion
---
 dmd/lexer.c |    2 +-
 dmd/lexer.h |    8 ++++----
 dmd/mars.c  |    2 +-
 dmd/parse.c |   12 ++++++------
 4 files changed, 12 insertions(+), 12 deletions(-)
2010-01-06 15:18:19 -03:00
Leandro Lucarella
7d2c329195 Merge DMD r243: some harmonization with D2 dmd
---
 dmd/aggregate.h   |   24 ++++-
 dmd/attrib.c      |   63 ++++++----
 dmd/attrib.h      |   10 +-
 dmd/declaration.h |    5 +-
 dmd/func.c        |  337 ++++++++++++++++++++++-------------------------------
 dmd/mars.c        |    2 +-
 dmd/mars.h        |    7 +
 dmd/mtype.h       |   13 ++-
 dmd/parse.c       |   32 ++++-
 dmd/parse.h       |   14 ++-
 dmd/scope.h       |    2 +-
 11 files changed, 263 insertions(+), 246 deletions(-)
2010-01-06 15:18:19 -03:00
Robert Clipsham
7192b16ef9 Automated merge with http://hg.dsource.org/projects/ldc 2009-12-28 02:23:54 +00:00
Robert Clipsham
42eca04683 Folded in a patch by Troy Straszheim to better report errors with -run. 2009-12-28 02:23:41 +00:00
Kelly Wilson
ab325e6214 Revert fix by Robert for downs as it causes a segfault when compiling tango. 2009-12-23 22:49:20 -07:00
Robert Clipsham
cf55f5fcec Merged the patch for dmd bugzilla #3620 by request of downs. 2009-12-20 13:58:08 +00:00
Christian Kamm
ff69db3b37 Fix definition of _Unwind_Action.
Thanks to Garrison.
2009-12-18 18:59:14 +01:00
Robert Clipsham
10e1768c37 Updated runtest to always rebuild libtangobos-partial.a in case of updates.
Changed std.stdarg to import ldc.vararg so it has the correct implementation.
2009-11-15 13:22:02 +00:00
Robert Clipsham
98e869c7ec Fixed DStress tests nocompile/c/{const_32_B.d,const_32_C.d}.
Updated the runtest script to build libtangobos-partial.a if it hasn't already been built.
Added in signbit() and va_arg!()() to libtangobos-partial.a so more of the phobos dependent DStress tests pass.
2009-11-08 16:16:17 +00:00
Robert Clipsham
3c1219669b Added in forgotten json.c and json.h files so ldc compiles again. 2009-11-07 14:21:56 +00:00
Christian Kamm
57630ea48b Make ref vars work with nesting. 2009-11-07 14:06:11 +01:00
Christian Kamm
4e2e4d5b3d Fix codegen for foreach with ref value being lowered to for. 2009-11-07 13:51:05 +01:00
Christian Kamm
bcd12c0ce1 Fix another test returning a non-void in a void function. 2009-11-07 11:16:09 +01:00
Christian Kamm
7dad594857 Replace DMD's isSymbolDeclaration with isStaticStructInitDeclaration.
See also [913] and bug #198.
2009-11-07 11:14:37 +01:00
Christian Kamm
4756d2a654 Fix bug in nested13 minitest.
Void functions may no longer return non-void expressions.
2009-11-07 11:01:49 +01:00
Christian Kamm
f84bddc8d0 Hack to make compiling the tango 0.99.8 runtime work.
The gc has no module statements and the new frontend fails to find
the imports. So I add an explicit include path to the runtime gc
directory.
2009-11-07 10:54:40 +01:00
Christian Kamm
3479e91996 Merge DMD 1.051 2009-11-06 23:58:01 +01:00
Christian Kamm
64a8e47ad6 Fix several 'reaches end of function' warnings by making fatal noreturn.
The warnings also pointed out a few genuine bugs. Replace some tabs with
spaces.
2009-11-06 21:51:41 +01:00
Tomas Lindquist Olsen
0db459fad0 Updated C binding to be more up to date with LLVM. 2009-10-22 13:30:30 +02:00
Tomas Lindquist Olsen
84a319ad23 Fixed issue in exception runtime with recent LLVM revisions, with this in place EH seems to work properly on x86-64. These fixes need to be merged into tango trunk still! 2009-10-21 05:46:56 +02:00
Moritz Warning
4d9df2012d basename => dirname, thanks Hxal 2009-09-22 20:26:50 +02:00
Robert Clipsham
70b2156010 Fixed a segfault in ldc2 when compiling synchronized{} blocks. 2009-09-19 13:05:10 +01:00
Robert Clipsham
d6a6b7c797 Fixed ticket #365. Thanks wilkie. 2009-09-19 00:44:35 +01:00