kai
bf2aaaca84
More unification work.
2012-07-29 16:13:52 +02:00
David Nadlinger
d24592b3e7
Fix #77 - LDC1 fails to compile tango.io.vfs.ZipFolder.
...
I think the same rewrite for contract this should be valid in D1 - if I missed something crucial, feel free to revert.
2012-06-02 19:21:36 +02:00
kai
48f8ffeb0b
Further changes to compile using MSVC.
2012-05-23 17:36:26 +02:00
Alexey Prokhin
8c5cf40bb5
Fixed compilation of ldc1
2012-04-22 12:26:25 +04:00
Alexey Prokhin
67df422667
Fixed a segfault when using opDollar for struct and class indexing operations
2012-04-22 12:11:02 +04:00
Alexey Prokhin
07bf68afa3
DMD Issue 5590 - Regression(2.036) ICE(e2ir.c): when using .values on enum which is associative array
2012-04-21 22:37:36 +04:00
Alexey Prokhin
8364ad4675
Fixed a crash when calling a function by an alias
2012-04-21 22:37:36 +04:00
Alexey Prokhin
1bd4e725e8
Fixed appending function literals to an array
2012-04-21 22:37:36 +04:00
Alexey Prokhin
f6111f23f2
Fixed #85 — ICE with a non-POD local struct literal in a class method
2012-03-06 10:47:24 +04:00
Alexey Prokhin
ae7f0ca7e7
Preliminary vector support
2012-02-16 14:42:23 +04:00
Alexey Prokhin
9ace3fae3e
DMD Issue 796 - Asserting a null object reference throws AssertError Failure internal\invariant.d(14) or Access Violation
2012-02-15 13:23:23 +04:00
Alexey Prokhin
fa361ed598
DMD Issue 4523 - [tdpl] .remove method for Associative Arrays returns void in all cases
2012-02-15 13:23:23 +04:00
Alexey Prokhin
eba8aac824
Fixed lambda inference
2012-02-15 13:23:22 +04:00
Alexey Prokhin
e74e55df89
Merge 2.058beta
2012-02-15 13:23:16 +04:00
Alexey Prokhin
e0dc95052b
Check count of arguments passed to ldc specific intrinsics
2012-02-15 13:16:34 +04:00
Alexey Prokhin
f237d85af0
Implemented bt/btc/btr/bts intrinsics
2012-02-15 13:16:34 +04:00
Alexey Prokhin
4d3ba3594c
Refactoring: moved ldc specific code from dmd/attrib.c and dmd2/attrib.c into gen/pragma.cpp
2012-02-15 13:16:06 +04:00
Alexey Prokhin
81082996e1
Fixed issue #68 — ICE on Associative Array Of Delegate Literals
2012-01-29 14:06:58 +04:00
Alexey Prokhin
b41688a0b8
DMD Issue 6859 - Segfault when abstract method uses with contract.
2011-12-16 20:15:31 +04:00
Alexey Prokhin
edc4a5f003
DMD Issue 5416 - null should have a type of its own
2011-12-16 20:15:10 +04:00
Alexey Prokhin
2980f703b1
Fixed #35 — ICE: postfix operation on typedef'd value
2011-12-05 13:09:10 +04:00
Alexey Prokhin
4b22221eb9
Fixed #34 - StructType::setBody assert isOpaque() failed
2011-12-05 13:07:13 +04:00
Alexey Prokhin
cd732537e8
Fixed atomic_store and atomic_load instrinsics
2011-12-04 16:05:48 +04:00
Alexey Prokhin
b8721a8515
Emit debug info for variables that are used in nested functions
2011-12-03 23:45:58 +04:00
Alexey Prokhin
1f3d9b98d0
Removed old hack for llvm 2.8, it is not required anymore
2011-12-03 14:20:54 +04:00
Alexey Prokhin
014d6bdd4d
Merged 2.056
2011-12-02 21:50:52 +04:00
kai
a5b3dd29b5
Fixes 2 kinds of warnings.
...
1) The last parameter of getGetElementPtr() has type bool. In some instances, a 2 is used as parameter. This is converted to true.
2) Several loops use int instead of unsigned. This causes warning about signed/unsigned mismatch.
Curiously, only Visual C++ complains about this. Nevertheless I think that the warnings should be fixed.
2011-11-23 19:01:04 +01:00
Alexey Prokhin
6ef7ee6d32
Unimplemented toConstElem is not a fatal error if errors are gagged.
...
Because ldc uses gagging to check whether an expression is constant.
2011-11-01 14:35:28 +04:00
Alexey Prokhin
b52c224d57
Merge v2.056
2011-11-01 11:44:03 +04:00
Alexey Prokhin
7431d58702
Rewritten initialization of global variables.
2011-10-25 15:43:49 +04:00
Alexey Prokhin
45426ca60d
Implemented atomic intrinsics for llvm 3.0
...
Unline older versions, llvm 3.0 provides atomic instructions, not intrinsics.
The patch wraps the instructions into intrinsics, so they will be accessible
from d code.
2011-10-25 15:43:49 +04:00
Alexey Prokhin
81426b8cc8
Fix DelegateExp::toElem return type
2011-10-25 15:43:49 +04:00
Alexey Prokhin
629f13929e
WIP: port to llvm 3.0
2011-10-25 15:43:39 +04:00
Alexey Prokhin
4879a8bc17
Fixed initialization of nested structs
2011-09-13 21:01:39 +04:00
Alexey Prokhin
8f4a15c868
Fix ldc1 regressions
2011-09-10 13:24:29 +04:00
Alexey Prokhin
f3c901af9d
Use _d_arraycatT to append an element to an array instead of reallocating the array
2011-09-10 13:23:47 +04:00
David Nadlinger
e397b29722
Fixed #448 for D2 and restored opOpAssign expression cache for D1.
...
When clearing the lvalue cache, the added-then-backed-out-then-added-back-for-D2-only code by Alexey permanently removed all casts from e1 (e1 is a member variable!), instead of only skipping them for the cachedLvalue assignment.
2011-07-28 23:10:22 +02:00
Alexey Prokhin
46c241009d
Fixed a segfault when compiling fail_compilation/fail105.d
2011-07-23 14:06:59 +04:00
Alexey Prokhin
edd1ed5b09
DMD issue 693 & 5946 - Allow using 'this' for alias template parameter
2011-07-19 19:43:05 +04:00
Alexey Prokhin
2cc34c4005
Call desctructors on temporary variables
2011-07-19 19:20:42 +04:00
Alexey Prokhin
c470a715a0
DMD issue 1570 - Wrong return for address operator
2011-07-19 19:20:39 +04:00
Alexey Prokhin
99f5a73125
Allow nonconstants in associative array initializers
2011-07-19 10:14:15 +04:00
Alexey Prokhin
4210f4285a
Fixed a few interpret regressions
2011-07-19 10:14:11 +04:00
Alexey Prokhin
6548ce2e79
Fix a crash in OrOrExp::toElem
2011-04-30 15:30:58 +04:00
Alexey Prokhin
8da0d673cf
Rework vaarg support on X86_64
2011-04-30 15:30:57 +04:00
David Nadlinger
7a24e12736
Cleanup: Remove unused code in backend, silence some warnings.
...
This removed quite some clutter that has presumably piled up because LDC is seldom built with a lot of warnings enabled due to DMDFE.
2011-04-24 12:21:33 +02:00
Alexey Prokhin
6d89bfa961
Use _d_assocarrayliteralTX to initialize associative arrays. Replace depricated _d_arrayappendcT() by _d_arrayappendcTX(). Make sure that a l-value of a binassign expressions is only evaluated once (reapllied 1784 but only for D2)
2011-02-20 19:00:45 +03:00
Moritz Warning
ec2ea65977
revert 1784
2011-01-11 03:20:35 +01:00
Alexey Prokhin
553d5518b3
Implemented casting of a global variable to a pointer in an initializer. Implemented adding to a pointer in an initializer
2011-01-08 13:01:54 +03:00
Alexey Prokhin
cbd0296328
Implemented CommaExp::cacheLvalue(). Fixed CallExp::chackLvalue().
2011-01-06 19:41:54 +03:00