Commit Graph

325 Commits

Author SHA1 Message Date
David Nadlinger
e1abb01e55 Remove superfluous Dsymbol::codegen overload. 2013-10-13 01:00:25 +02:00
David Nadlinger
b6a73fbd65 More trivial diff reduction now that #484 is in. 2013-10-05 22:04:54 +02:00
David Nadlinger
ee7fe16e40 Low-hanging DMD diff reduction fruit.
The trailing whitespace isn't pretty, but removes the
files completly from the diff.
2013-10-05 21:19:35 +02:00
Alexey Prokhin
8d54cc539f Clean up mtype 2013-10-05 19:04:18 +04:00
Alexey Prokhin
b819975c84 Eliminate the need for TypeFunction::funcdecl 2013-10-05 19:03:03 +04:00
kai
3dd67a7631 Add more #if's around LDC specific code 2013-08-18 20:05:24 +02:00
kai
f4637b1c3d Minimize differences to DMD source. 2013-08-08 06:51:18 +02:00
Alexey Prokhin
54078eca66 Set global.params.isOS variables so we do not have to modify dmd frontend to use targetTriple 2013-07-29 18:49:09 +04:00
Alexey Prokhin
fb31047dcd Prettify our C functions' signatures patch to have a chance to be included into dmd 2013-07-29 16:52:42 +04:00
Alexey Prokhin
d45931972c Move Target implementation out of dmdfe 2013-07-29 11:18:25 +04:00
Alexey Prokhin
153febd093 Remove minor differences with upstream 2013-07-29 11:18:18 +04:00
Alexey Prokhin
21b07c783a Remove Module::moduleInfoType 2013-07-28 21:59:01 +04:00
Alexey Prokhin
69e7907875 Move implementation of Module::buildTargetFiles and Module::buildFilePath to gem/module.cpp 2013-07-28 21:17:25 +04:00
kai
a2f7246c49 Fix for part 1 of issue 424.
Yet another difference between static arrays and vectors. Initializing a static
array with one element is handled especially. This fix adds the same handling for
vector types.
2013-07-04 08:06:09 +02:00
kai
1a8c3588b5 Fix for issue #420.
The frontend only creates a scalar literal instead of an
array literal in order to initialize a vector field. This
commit adds the missing code.
2013-07-01 00:48:44 +02:00
kai
7faa23f99c Merge of v2.063.2 2013-06-29 19:01:42 +02:00
kai
aa143b560c Include Git revision in version info.
CMakeLists.txt contains now the version numbers for DMD and (next) LDC release.
If a .git folder is found then the LDC version is replaced by the first 6 chars
of the Git revision.

Possible improvements:

- If the build is not done at the master branch then it could be useful to check for a tag and use the tag instead of the revision. (for release builds)
- Maybe it is useful to include the branch name.

This fixes issue #366.
2013-06-21 06:47:32 +02:00
David Nadlinger
235bb94878 Make -release only disable bounds checking in non-@safe code. 2013-06-17 13:31:21 +02:00
David Nadlinger
480d05c76e Removed unused and broken template instantiation origin detection.
Having something like this would be useful in determining
whether to define a given template symbol during codegen, but
the frontend sometimes produces TemplateInstances in a scope
where sc->tinst has not been semantic'd, thus breaking the
chaining mechanism.
2013-06-16 18:21:36 +02:00
David Nadlinger
a7882a8ae6 Fix another few issues caused by the upstream v2.063.1 retagging. 2013-06-15 15:08:19 +02:00
David Nadlinger
0e49a57a5f More upstream DMD alignment. 2013-06-15 15:06:57 +02:00
David Nadlinger
66e9427f88 Backport StructLiteralExp::toChars infinite recursion fix.
We absolutely need this for log output/debugging.
2013-06-15 15:04:48 +02:00
David Nadlinger
7874c95cdc Remove unused StructLiteralExp::constType variable. 2013-06-15 15:04:48 +02:00
David Nadlinger
bca5dac669 Fixed ClassReferenceExp codegen, handle self-referential literals. 2013-06-15 15:04:48 +02:00
David Nadlinger
041e8e8b54 Remove LDC-specific .classinfo AST rewrite.
Apart from reducing the diff to upstream DMD, this also fixes a
"cannot interpret" CTFE issue.
2013-06-14 21:49:44 +02:00
David Nadlinger
3035735bc9 FuncDeclaration::canInline diff reduction.
The new arguments to the call in DtoLinkage do not exactly
match what was there before, but have been harmonized with
the other canInline call.
2013-06-14 19:14:19 +02:00
David Nadlinger
349305cd1d Fix array op argument evaluation order regression.
Fixes DMD testcase 'arrayop'.
2013-06-14 17:02:58 +02:00
David Nadlinger
4c788699ae Initial, incomplete ClassReferenceExp::toConstElem implementation.
Allows us to get through a Phobos build without errors.
2013-06-12 20:23:27 +02:00
David Nadlinger
33245282ef More trivial DMD diff reduction. 2013-06-12 20:16:37 +02:00
David Nadlinger
24e3abff34 Unions are always static since Issue 9244. 2013-06-12 20:16:37 +02:00
David Nadlinger
6898d0fa4a Removed last bit of interpret.c diff. 2013-06-12 20:16:37 +02:00
David Nadlinger
ab7ffa9988 Removed obsolete importprot members. 2013-06-12 20:16:37 +02:00
David Nadlinger
292caa1438 Merge the 2.063 frontend. 2013-06-12 20:16:37 +02:00
David Nadlinger
28f39cbdad Remove superfluous Expression::toConstElem overrides.
The error message can be printed by the non-overridden
Expression::toConstElem just as well.
2013-06-12 17:16:31 +02:00
David Nadlinger
9ad88ef713 Remove CastExp::disableOptimization. 2013-06-11 18:14:13 +02:00
David Nadlinger
978c2c1b6a Re-enable SymOffExp and remove associated LLVM-only modifications. 2013-06-11 00:40:48 +02:00
David Nadlinger
f5e276d6a6 Revert meaning of AddExp/MinExp for pointers to DMD default.
It might be worth considering to move the stride multiplication
down to the glue layer in the upstream sources. But assigning a
different meaning to AST nodes was a giant maintenance
liability, especially with regard to CTFE.
2013-06-10 22:49:01 +02:00
David Nadlinger
f7aac5201b Remove unused extra argument to overload checking functions. 2013-06-07 21:23:19 +02:00
David Nadlinger
bf4d679e1a More trivial upstream alignment. 2013-06-07 19:44:04 +02:00
David Nadlinger
c7c1c25f15 DValue: struct->class.
This is in line with an incoming upstream change making all
polymorphic structs classes, and also matches common coding
conventions.
2013-06-07 03:20:39 +02:00
David Nadlinger
005f993982 Merge branch 'release-0.11.0'.
Conflicts:
	gen/llvmhelpers.cpp
2013-06-02 21:53:41 +02:00
David Nadlinger
feeb5e95cc Merge tag 'v0.11.0-beta1' into release-0.11.0
The merge of the MinGW Port updates accidentally didn't make
it into the GitHub version of the release branch, even though
the tag was correct.
2013-06-01 13:53:47 +02:00
David Nadlinger
9dd573d96d Remove what seems to be an ancient LLVM-only issue 314 fix. 2013-05-31 22:42:21 +02:00
David Nadlinger
c0a5145829 Remove DMDV2 to align with 2.062 upstream source. 2013-05-31 22:42:21 +02:00
David Nadlinger
1b4f0c5d4a Remove LDC-only workaround for 2206.
The bug has been fixed in upstream at least since 2.052.
2013-05-31 22:42:21 +02:00
David Nadlinger
7e7af8c920 Prefer Port over #if-switching on the compiler.
The issue might have to be revisited (with proper testing)
for FreeBSD or ARM.
2013-05-31 22:42:21 +02:00
David Nadlinger
ca3cd82805 Removed obsolete html.{h, c}.
Gone from upstream in 2.062 as well.
2013-05-31 22:42:21 +02:00
kai
e0dd8ef8ef Change version number for release 2013-05-30 13:50:17 +02:00
David Nadlinger
798a8e7822 MinGW: Fixed long double formatting. 2013-05-29 22:18:55 +02:00
David Nadlinger
0b5989c51a MinGW: Use actually working strtold.
Like their whole runtime in general, the MSVC version does
not handle 80 bit reals/long doubles.
2013-05-29 22:18:42 +02:00