Commit Graph

3422 Commits

Author SHA1 Message Date
Kai Nacke
1de68a45b8 First import of dmd-2.065-b1 (7088593).
The CPP mangling is not integrated yet.
2013-12-06 16:59:41 +01:00
Kai Nacke
2fa997e6ad Fix wrong #if 2013-12-06 09:20:22 +01:00
Kai Nacke
4faa8d85b7 Merge branch 'master' into merge-2.064
Conflicts:
	runtime/phobos
2013-12-05 13:15:41 +01:00
Kai Nacke
7bd1d4900c Do not allow failures for LLVM 3.4 on Travis-CI.
LLVM 3.4rc2 has been released. As the last issue is fixed, we now start to
support LLVM 3.4.
Adds also a build for LLVM 3.5 (which is allowed to fail).
2013-12-05 12:07:56 +01:00
Kai Nacke
1f983f7c6a Cherry-pick phobos commit to make std.math unit test IEEE 754 compliant 2013-12-05 11:11:37 +01:00
Kai Nacke
c0673fee71 Merge branch 'master' into merge-2.064 2013-12-05 08:41:05 +01:00
Kai Nacke
76199638c1 Fix null pointer derefence in LLVM 3.5 2013-12-05 08:40:04 +01:00
Kai Nacke
9c590a1b88 Merge branch 'master' into merge-2.064 2013-12-03 18:10:29 +01:00
Kai Nacke
cc22116993 Add Android version identifier 2013-12-03 16:47:22 +01:00
Kai Nacke
133ae1b2c8 Fix a failure in runnable/funclit.d 2013-12-03 12:33:47 +01:00
Kai Nacke
08e31123e5 Fix issue with unions and initializers 2013-12-03 08:39:46 +01:00
Kai Nacke
5e6f696b43 Fix logic to decide which new/delete operator to use. 2013-12-02 10:05:50 +01:00
Kai Nacke
1a36f9b394 Replace general error with more accurate error message (does not resolve issue) 2013-11-28 08:04:49 +01:00
Kai Nacke
e1464fe458 CCP classes do not have a monitor.
This fixes a failure in runnable/xtest46.d. I still need to check
the structure of the emitted class for compability with C++.
2013-11-28 07:59:01 +01:00
Kai Nacke
eb85713ed1 Merge branch 'master' into merge-2.064 2013-11-27 22:46:38 +01:00
Kai Nacke
37ee9962fd Changes for LLVM 3.5 v0.12.1 2013-11-27 22:44:49 +01:00
Kai Nacke
d7d0ebb65c Add new version identifiers if a sanitizer is specified. 2013-11-27 22:43:59 +01:00
Kai Nacke
87965cdc19 Merge branch 'master' into merge-2.064
Conflicts:
	runtime/druntime
2013-11-26 08:00:10 +01:00
Kai Nacke
7f017608a8 Use enum literal instead of constant 2013-11-26 07:56:50 +01:00
Kai Nacke
a81a98cb30 Fix type in pragma (LLVM 3.4 only) 2013-11-26 07:56:16 +01:00
Kai Nacke
711a04bfa0 Added new LLVM 3.4 intrinsics 2013-11-25 22:53:48 +01:00
Kai Nacke
1c3bcd1d2c Added new LLVM 3.4 intrinsics 2013-11-25 22:46:55 +01:00
Kai Nacke
f662221d5c Update to LLVM 3.5 2013-11-25 21:24:05 +01:00
Kai Nacke
8a69b61632 Update to LLVM 3.5 2013-11-25 21:18:55 +01:00
Kai Nacke
18d53f8937 Enable NRVO for static arrays.
This is new in 2.064 and fixes a test failure in runnable/sdtor.d.
2013-11-20 21:29:50 +01:00
Kai Nacke
3ef3e358f5 Wrong break target choosen for labeled break.
This fixes a test failure in runnable/foreach5.d.
2013-11-20 17:00:37 +01:00
Kai Nacke
b22b7aef3c Merge branch 'master' into merge-2.064 2013-11-14 21:35:10 +01:00
Kai Nacke
2063b4ea89 Fix for issue #543.
Immutables are constant values, too.
2013-11-14 21:21:04 +01:00
Kai Nacke
ba8caa7bb1 Merge branch 'master' into merge-2.064 2013-11-14 06:51:40 +01:00
Kai Nacke
29e646ed9a Fix error message in case object.di is not found. 2013-11-14 06:51:00 +01:00
Kai Nacke
015cf202e1 Fix cast problem with implicit constructors. 2013-11-12 08:23:06 +01:00
Kai Nacke
7743f56450 Fix for the tuple assignment error in test aliasthis.d
The DMD front end uses a hack to avoid a "has no effect" error. This
hack must be recognised by LDC, too.
2013-11-10 20:34:48 +01:00
Kai Nacke
9ecd0da1b6 Add new testsuite.
This adds the DMD 2.064 test suite. It includes a workaround for a LLVM bug in the unit tests, too.
2013-11-08 14:40:45 +01:00
Kai Nacke
4d856b881f Update test suite to 2.064 2013-11-08 09:50:36 +01:00
Kai Nacke
cef5b27400 Revert "Declare more TypeClass instances as builtin."
This reverts commit f7f62a609d.
2013-11-07 17:13:45 +01:00
Kai Nacke
e02947155f Merge remote-tracking branch 'origin/merge-2.064' into merge-2.064 2013-11-07 12:00:59 +01:00
kai
b7d80963ee Mark more differences between DMD and LDC. 2013-11-06 02:27:08 +01:00
Kai Nacke
2cdc483315 Merge remote-tracking branch 'origin/master' into merge-2.064 2013-11-05 13:41:18 +01:00
kai
e6529cfd3d [experimental] Add sanitizer options to LDC.
Add some of the sanitizer passes to LDC. This is not complete (linking must be
done using clang and the right `-fsanitize=` option) and may not be useful at
all.

If it proves to be usefull then a lot of other options (e.g. blacklist) must be
added.
2013-11-05 13:03:52 +01:00
Kai Nacke
254579df2c Correct issues found by AddressSanitizer. 2013-11-05 11:44:21 +01:00
Kai Nacke
248d3f2b66 Merge branch 'master' into merge-2.064 2013-11-05 10:47:43 +01:00
kai
6fe28e1660 Small code modifications to Ir-Classes.
Adds some constructors and moves the code to the header file. Uses some of the new constructors.

A big problem with the source are the different strategies used for otherwise similar classes.
E.g. a IrField registers itself with the VarDeclaration. Same is required for IrParameter, but
in this case it is done by the caller.
2013-11-05 10:31:14 +01:00
Kai Nacke
f772efaec3 Merge branch 'master' into merge-2.064 2013-11-04 02:24:02 +01:00
kai
8d7f0bf0eb Fix for issue #535.
The symbols must have weak_odr linkage if they result from a template instantiation.
2013-11-04 02:21:05 +01:00
Kai Nacke
2f8f68fabd Update to DMD@a9eedd1.
Also include latest phobos changes.
2013-11-04 00:02:41 +01:00
Kai Nacke
f7f62a609d Declare more TypeClass instances as builtin.
Another difference to DMD. With the new TypeInfo, this should work now.
2013-11-03 15:23:11 +01:00
Kai Nacke
ecefd81c42 Possible fix for the current segfaults.
DMD treats immutable(char)[] and cons(char)[] as builtin.
The latter was missing in LDC.
2013-11-03 13:45:25 +01:00
kai
bf4c6f8ff2 Fix CR/LF horror which prevents compiling with MSVC 2013-11-02 20:23:31 +01:00
kai
1310337d6e Add more IN_LLVM sections and minimize more differences to DMD. 2013-11-02 19:56:47 +01:00
Kai Nacke
27ccce3d1f Make std.math.ldexp @trusted 2013-11-01 20:21:59 +01:00