Thread overview
D2.067 with half-proper Win64 support ante portas!
Aug 06, 2015
kinke
Aug 07, 2015
Martin Nowak
Aug 07, 2015
kink
Aug 07, 2015
ponce
Aug 08, 2015
kinke
Aug 09, 2015
kinke
Aug 20, 2015
Benjamin Thaut
August 06, 2015
Hey guys,

some updates:

2.067:
We have the first green merge-2.067 builds, see https://github.com/ldc-developers/ldc/pull/1014. Still TODO:
* dtor rework - https://github.com/ldc-developers/ldc/issues/1010
* verify https://github.com/ldc-developers/ldc/pull/1014
* Linux: shared libraries lead to failing rt.util.typeinfo-debug test

MSVC (Visual Studio):
With some PRs yet to be approved + a hack (https://github.com/kinke/ldc, https://github.com/kinke/druntime, https://github.com/kinke/phobos, branch `win64`), LDC based on merge-2.067 builds fine in combination with Visual Studio 2015 and LLVM 3.7 (55a6a4c). 1 unittest module cannot be built (std.string-debug); all others pass their tests except for 2 failures (core.thread and std.uni-debug). Still TODO:
* multiple definitions when linking, apparently since LLVM 3.7 - https://github.com/ldc-developers/ldc/issues/988
* presumably a LLVM debug info/relocation bug preventing std/string-unittest-debug.obj from being compiled - https://github.com/ldc-developers/ldc/issues/930 and https://llvm.org/bugs/show_bug.cgi?id=15393
* failing assertion in core.thread (release), line 5467: Win64-specific ABI test wrt. non-volatile registers, DMD inline asm and fibers... %)
* segfault in std.uni-debug, line 2982; this test triggered issue #1010 about enormous dtor bloat...
* check dmd-testsuite - I don't have any `make` on my Windows box

So stay tuned for the next release, there has most likely never been something so close to a serious D compiler on Win64 ever! With VS 2015, MS has finally implemented most of the C99 runtime standard, thus simplifying portability across operating systems..

There are good times ahead of us. :)
August 07, 2015
On Thursday, 6 August 2015 at 22:39:47 UTC, kinke wrote:
> So stay tuned for the next release, there has most likely never been something so close to a serious D compiler on Win64 ever! With VS 2015, MS has finally implemented most of the C99 runtime standard, thus simplifying portability across operating systems..

Sounds like you already found out how to make druntime compatible to VS2015. Can you help us with this issue? Which crt libraries are you looking too, apparently there are different flavors now.
https://issues.dlang.org/show_bug.cgi?id=14849#c7
August 07, 2015
On Thursday, 6 August 2015 at 22:39:47 UTC, kinke wrote:
> So stay tuned for the next release, there has most likely never been something so close to a serious D compiler on Win64 ever! With VS 2015, MS has finally implemented most of the C99 runtime standard, thus simplifying portability across operating systems..
>
> There are good times ahead of us. :)


Great news! Thanks to the team.
August 07, 2015
On Friday, 7 August 2015 at 10:52:36 UTC, Martin Nowak wrote:
> On Thursday, 6 August 2015 at 22:39:47 UTC, kinke wrote:
>> So stay tuned for the next release, there has most likely never been something so close to a serious D compiler on Win64 ever! With VS 2015, MS has finally implemented most of the C99 runtime standard, thus simplifying portability across operating systems..
>
> Sounds like you already found out how to make druntime compatible to VS2015. Can you help us with this issue? Which crt libraries are you looking too, apparently there are different flavors now.
> https://issues.dlang.org/show_bug.cgi?id=14849#c7

Yes, I did so a few months ago. The relevant commit is https://github.com/kinke/druntime/commit/6a1c9d330d97bc81f545274aab165475758dbb63. Merging the VS 2015 stuff with the older legacy stuff without a version declaration would probably be not that simple and make the MS exceptions even uglier. Ideally, we'd drop all legacy MS stuff soon, cleansing druntime and phobos from ugly MS workarounds in various places.
I didn't bother checking out the new structure (VCRuntime, AppCRT, DesktopCRT) - we need what we need in druntime and will then have appropriate dependencies. :)
August 08, 2015
On Thursday, 6 August 2015 at 22:39:47 UTC, kinke wrote:
> * check dmd-testsuite - I don't have any `make` on my Windows box

News on that front: https://github.com/ldc-developers/dmd-testsuite/pull/10
Only 11 failures for dmd-testsuite-debug on Win64. :)
August 09, 2015
I've updated the Wiki page: http://wiki.dlang.org/Building_and_hacking_LDC_on_Windows_using_MSVC
August 20, 2015
On Sunday, 9 August 2015 at 02:51:59 UTC, kinke wrote:
> I've updated the Wiki page: http://wiki.dlang.org/Building_and_hacking_LDC_on_Windows_using_MSVC

Thanks for all your hard work, I'm really looking forward to a working 64-bit D compiler on windows. Unfortunately the GDC based on TDM-64 is no longer maintained and the other windows based gdc released are basically unusable.