Christian Kamm
a38d34dead
Trivial fix for bug #265
2009-04-23 20:28:29 +02:00
Tomas Lindquist Olsen
37cf5a5789
Added Doxygen file.
...
Completely seperated type and symbol generation. Should fix a lot of bugs, but is not yet 100% complete.
2009-04-15 20:06:25 +02:00
Tomas Lindquist Olsen
3d1f8cc565
Merged DMD 1.042.
2009-04-03 17:59:34 +02:00
Christian Kamm
d7de486493
A different fix to #218 and DMD2682 that does not lead to constant folding regressions.
...
Fixes run/const_15, run/c/const_16_B.
The price is removing the lvalueness of struct literals. If it turns out too
much code depends on this behavior or we don't want to break with DMD, we
could keep struct literals as lvalues and instead convert struct literals used
as expression initializers into struct initializers.
2009-03-29 11:43:45 +02:00
Tomas Lindquist Olsen
36f6ebc77f
- Versioned Expresssion::toElem with #if IN_DMD/IN_LLVM.
...
- Eliminated the DLRValue DValue.
- Implemented proactive handling of l-value CastExpS.
- Minor tweak in runtime memory.d .
2009-03-28 05:00:43 +01:00
Tomas Lindquist Olsen
c42c90ea80
* Moved ir/irsymbol.cpp/h into ir/irdsymbol.cpp/h.
...
* Added #if IN_DMD versioning around DMD backend specific code in the D1 frontend, D2 is currently broken.
* All part of a greater cleanup scheme.
2009-03-26 20:45:53 +01:00
Tomas Lindquist Olsen
3ac45285fc
Cleanup DMD 1.041 merge.
2009-03-23 20:26:33 +01:00
Frits van Bommel
434cb74980
Fix a bug where ::warning() was called with a va_list argument instead of an
...
actual vararg list.
Also cleaned up the format for warnings. (Previously some would start with
"warning - warning - Warning:" which was a bit redundant)
2009-03-18 15:03:17 +01:00
Frits van Bommel
bc9fae17a8
Another "pointers are 32 bits" issue in the frontend. long/ulong constants cast
...
to pointers were truncated to 32-bit values.
Closes #234 .
2009-03-15 15:58:38 +01:00
Tomas Lindquist Olsen
8b751cce0e
- Updated to DMD frontend 1.041.
...
- Removed dmd/inifile.c , it's not under a free license, replaced with libconfig based config file.
2009-03-12 20:37:27 +01:00
Christian Kamm
b7febcf35a
Error gracefully for +=, -=, *=, /= if rhs is complex but lhs isn't.
2009-02-28 19:58:30 +01:00
Christian Kamm
4e05607355
Change custom allocator new size argument to size_t instead of uint. See #175 .
2009-01-18 13:10:19 +01:00
Tomas Lindquist Olsen
dcb9628849
Merged DMD 1.039
2009-01-07 19:34:48 +01:00
Tomas Lindquist Olsen
16409a3367
Merged DMD 1.038
2009-01-06 16:33:51 +01:00
Tomas Lindquist Olsen
6716aecc52
Merged DMD 1.037 frontend
2008-12-13 13:15:31 +01:00
Tomas Lindquist Olsen
c14996f39e
Removed insufficient fix for DMD bug 1161, it was causing problems with instantiating imported templates, and passing private variables as aliases. I failed to come up with a proper fix!
2008-12-10 13:56:10 +01:00
Christian Kamm
cdbc4f84d2
Fix warnings on x86-64. By fvbommel.
2008-11-28 21:24:08 +01:00
Christian Kamm
ac28509bde
Fix return type of OrOr and AndAndExp being set incorrectly if rhs is void. Thanks wilsonk!
2008-11-22 18:38:13 +01:00
Tomas Lindquist Olsen
3c3a5dda14
Implemented correct parameter order according to x86-32 ABI documentation.
...
Changed AA types to just a void* .
2008-10-25 06:03:28 +02:00
Tomas Lindquist Olsen
5ad345646a
Merged DMD 1.036.
...
Improved comments a little in the runtime source code.
2008-10-22 17:06:17 +02:00
Christian Kamm
a3a418150e
Some missed LLVMDC -> LDC.
2008-10-06 22:54:08 +02:00
Christian Kamm
b3d4bc83f8
Move check for access of context for nested class from backend into frontend.
2008-10-02 23:12:19 +02:00
Tomas Lindquist Olsen
4280a86bcf
Fixed .funcptr property of delegates, no longer uses the infamous DMD rewrites to pointer arithmetic, instead a GEPExp has been introduced.
2008-09-15 02:04:26 +02:00
Tomas Lindquist Olsen
8e9b957bce
Complex number should now follow the D ABI on x86. They're also treated as first class values now. Big change.
2008-09-09 16:49:47 -07:00
Tomas Lindquist Olsen
f3b3db7fa9
Changed all '#if linux || __APPLE__' to '#if POSIX' so we can support other platforms too, thanx for the suggestion anders.
2008-09-02 23:10:12 +02:00
Christian Kamm
8d95fc7b3e
Add isnan for __APPLE__ and darwin version ident for OSX.
2008-08-24 16:59:08 +02:00
Jacob Carlborg
81de0c4b23
Add __APPLE__ to most #if linux compile time switches.
2008-08-24 16:54:06 +02:00
Tomas Lindquist Olsen
5aae7a6bee
Merged DMD 1.034, array operations are not yet implemented ;)
2008-08-14 06:55:41 +02:00
Tomas Lindquist Olsen
9d7f16b967
Added pragma(llvmdc, "string") for misc per-module compiler configuration, currently "string" can only be "verbose" which forces -vv for module it appears in.
...
Reimplemented support for nested functions/class using a new approach.
Added error on taking address of intrinsic.
Fixed problems with the ->syntaxCopy of TypeFunction delegate exp.
Removed DtoDType and replaced all uses with ->toBasetype() instead.
Removed unused inplace stuff.
Fixed a bunch of issues in the runtime unittests, not complete yet.
Added mini tests.
2008-08-10 08:37:38 +02:00
Tomas Lindquist Olsen
691a922850
Changed DMD to make a copy of the TypeFunction in DelegateExp.
2008-08-04 17:32:13 +02:00
Tomas Lindquist Olsen
daad516579
Removed the 'needsstorage' thing from Dsymbol. Arguments are not always given storage when applicable. This is not longer treat specially
...
in this regard. Code for accessing nested variables and contexts rewritten. Probably more. Fairly well tested.
2008-08-04 02:59:34 +02:00
Christian Kamm
d9f85de2a1
Fix real comparison for real: allow +0 to be distinguished from -0.
2008-07-28 21:37:47 +02:00
Christian Kamm
cf4565095c
Use == in RealEquals and get rid of the memcmp there entirely.
2008-07-28 20:50:41 +02:00
Christian Kamm
8485be7238
Make RealEquals only compare the data bytes.
...
Fixes run/t/template_class_13_* regressions introduced in [r401].
2008-07-27 18:52:40 +02:00
Christian Kamm
befaf511e6
Fix compile-time comparison of template value parameters of real type.
2008-07-27 13:29:31 +02:00
Tomas Lindquist Olsen
832504e5d7
[svn r357] Merged DMD 1.033
2008-07-12 19:38:31 +02:00
Tomas Lindquist Olsen
521de1a47e
[svn r349] Fixed problems with static arrays of void as well as a static arrays with zero length.
...
Fixed issues with DMD generated assert statements when using class invariants, generally due to incomplete ASTs.
Removed some dead code.
Added a few comments.
2008-07-11 00:17:00 +02:00
Tomas Lindquist Olsen
03d26e1178
[svn r326] Fixed a bunch of issues with printf's that MinGW32 did not support.
...
Fixed problems with label collisions when using labels inside inline asm. LabelStatement is now easily reached given its
Identifier, which should be useful elsewhere too.
Enabled inline asm for building the lib/compiler/llvmdc runtime code, fixing branches out of asm makes this possible.
2008-06-27 22:04:35 +02:00
Tomas Lindquist Olsen
5647598da9
[svn r306] Fixed: it's now possible to compile and link llvmdc with MinGW32 and msys on Win32 :D I tried it myself ;) Building the runtime still needs some work, but it's a step in the right direction.
2008-06-21 03:14:49 +02:00
Tomas Lindquist Olsen
a0c6cb6673
[svn r179] lots and lots of fixes, much more of tango now compiles/works.
2008-05-05 07:36:29 +02:00
Christian Kamm
7ae4bc6477
[svn r175] merged dmd 1.029
2008-05-01 15:15:28 +02:00
Tomas Lindquist Olsen
94c47aa1fa
[svn r143] Fixed: a few bugs in debug information, still only line info, but should be correct files now :)
...
Fixed: tango.io.Console seems to be working now.
2008-01-22 00:01:16 +01:00
Tomas Lindquist Olsen
5652546986
[svn r140] did a lot of the work towards being able to pass multiple modules on the command line. not complete yet though
2008-01-17 03:15:12 +01:00
Tomas Lindquist Olsen
bc08c6fcb1
[svn r135] * Merged DMD 1.025 *
...
* Fixed a minor linking order mishap *
* Added an command line option -annotate *
* Fixed some problems with running optimizations *
* Added std.stdio and dependencies to lphobos (still not 100% working, but compiles and links) *
* Fixed problems with passing aggregate types to variadic functions *
* Added initial code towards full GC support, currently based on malloc and friends, not all the runtime calls the GC yet for memory *
* Fixed problems with resolving nested function context pointers for some heavily nested cases *
* Redid function argument passing + other minor code cleanups, still lots to do on this end... *
2008-01-04 01:38:42 +01:00
Tomas Lindquist Olsen
4428e47a66
[svn r134] Merged the DMD 1.024 frontend.
...
Added std.base64.
2007-12-28 23:52:40 +01:00
Tomas Lindquist Olsen
a807cbfc91
[svn r112] Fixed 'case 1,2,3:' style case statements.
...
Fixed a bunch of bugs with return/break/continue in loops.
Fixed support for the DMDFE hidden implicit return value variable. This can be needed for some foreach statements where the loop body is converted to a nested delegate, but also possibly returns from the function.
Added std.math to phobos.
Added AA runtime support code, done ground work for implementing AAs.
Several other bugfixes.
2007-11-20 05:29:20 +01:00
Tomas Lindquist Olsen
454f50ccbc
[svn r96] Updated to DMD 1.023.
...
Regular bugfixes.
2007-11-08 19:13:28 +01:00
Tomas Lindquist Olsen
d58ce84169
[svn r86] Changed the way arguments are given storage. It is now detected if they will need it during semantic passes.
...
Initial support for debug information. Very limited, but MUCH better than nothing :)
2007-11-02 01:17:26 +01:00
Tomas Lindquist Olsen
5478de7147
[svn r61] Added support for D-style variadic functions :)
2007-10-25 02:39:53 +02:00
Tomas Lindquist Olsen
817c05be2b
[svn r46] fix for shift operations
...
added a simple opengl binding in demos
2007-10-19 15:16:11 +02:00