Thread overview
LDC 1.13.0-beta2
Nov 21
kinke
Nov 22
Joakim
Nov 22
Joakim
Nov 29
Joakim
Nov 24
kinke
November 21
Glad to announce the second beta for LDC 1.13:

* Based on D 2.083.0+ (yesterday's DMD stable).
* The Windows packages are now fully self-sufficient, i.e., a Visual Studio/C++ Build Tools installation isn't required anymore.
* Substantial debug info improvements.
* New command-line option `-fvisibility=hidden` to hide functions/globals not marked as export, to reduce the size of shared libraries.

Full release log and downloads: https://github.com/ldc-developers/ldc/releases/tag/v1.13.0-beta2

Thanks to all contributors!

November 21
On Wed, Nov 21, 2018 at 10:43:55AM +0000, kinke via Digitalmars-d-announce wrote:
> Glad to announce the second beta for LDC 1.13:
> 
> * Based on D 2.083.0+ (yesterday's DMD stable).
> * The Windows packages are now fully self-sufficient, i.e., a Visual
> Studio/C++ Build Tools installation isn't required anymore.
> * Substantial debug info improvements.
> * New command-line option `-fvisibility=hidden` to hide functions/globals
> not marked as export, to reduce the size of shared libraries.
> 
> Full release log and downloads: https://github.com/ldc-developers/ldc/releases/tag/v1.13.0-beta2
> 
> Thanks to all contributors!

Awesome work keeping up with the DMD releases!


T

-- 
Береги платье снову, а здоровье смолоду.
November 22
On Wednesday, 21 November 2018 at 10:43:55 UTC, kinke wrote:
> Glad to announce the second beta for LDC 1.13:
>
> * Based on D 2.083.0+ (yesterday's DMD stable).
> * The Windows packages are now fully self-sufficient, i.e., a Visual Studio/C++ Build Tools installation isn't required anymore.
> * Substantial debug info improvements.
> * New command-line option `-fvisibility=hidden` to hide functions/globals not marked as export, to reduce the size of shared libraries.
>
> Full release log and downloads: https://github.com/ldc-developers/ldc/releases/tag/v1.13.0-beta2
>
> Thanks to all contributors!

I've added native builds for Android, including Android/x86_64 for the first time. Several tests for std.variant segfault, likely because of the 128-bit real causing x64 codegen issues, but most everything else passes.

This means that if you have an x86 or x64 Chromebook that supports running Android apps, you can install the Termux app and compile D code on there:

https://nosarthur.github.io/coding/2018/01/15/termux.html
November 22
On Thu, Nov 22, 2018 at 01:25:53PM +0000, Joakim via Digitalmars-d-announce wrote:
> On Wednesday, 21 November 2018 at 10:43:55 UTC, kinke wrote:
> > Glad to announce the second beta for LDC 1.13:
> > 
> > * Based on D 2.083.0+ (yesterday's DMD stable).
[...]
> I've added native builds for Android, including Android/x86_64 for the first time. Several tests for std.variant segfault, likely because of the 128-bit real causing x64 codegen issues, but most everything else passes.
[...]

What's the status of cross-compiling to 64-bit ARM?  On the wiki you wrote that it doesn't fully work yet.  Does it work with this new release?


T

-- 
Never wrestle a pig. You both get covered in mud, and the pig likes it.
November 22
On Thursday, 22 November 2018 at 16:36:22 UTC, H. S. Teoh wrote:
> On Thu, Nov 22, 2018 at 01:25:53PM +0000, Joakim via Digitalmars-d-announce wrote:
>> On Wednesday, 21 November 2018 at 10:43:55 UTC, kinke wrote:
>> > Glad to announce the second beta for LDC 1.13:
>> > 
>> > * Based on D 2.083.0+ (yesterday's DMD stable).
> [...]
>> I've added native builds for Android, including Android/x86_64 for the first time. Several tests for std.variant segfault, likely because of the 128-bit real causing x64 codegen issues, but most everything else passes.
> [...]
>
> What's the status of cross-compiling to 64-bit ARM?  On the wiki you wrote that it doesn't fully work yet.  Does it work with this new release?

It's been mostly working since 1.11. That note on the wiki links to this tracker issue that lists the few remaining holes, mostly just extending Phobos support for 80-bit precision out to full 128-bit Quadruple precision in a few spots and finishing off the C/C++ compatibility:

https://github.com/ldc-developers/ldc/issues/2153




November 23
On Wednesday, 21 November 2018 at 10:43:55 UTC, kinke wrote:
> Glad to announce the second beta for LDC 1.13:
>
> * Based on D 2.083.0+ (yesterday's DMD stable).
> * The Windows packages are now fully self-sufficient, i.e., a Visual Studio/C++ Build Tools installation isn't required anymore.
> * Substantial debug info improvements.
> * New command-line option `-fvisibility=hidden` to hide functions/globals not marked as export, to reduce the size of shared libraries.
>
> Full release log and downloads: https://github.com/ldc-developers/ldc/releases/tag/v1.13.0-beta2
>
> Thanks to all contributors!

Nice! It seems that docker image is not updated since 1.9.0 (but it is tagged as "automated build"). Could you please update that image?

https://hub.docker.com/r/dlanguage/ldc/

Andrea
November 23
On 2018-11-21 11:43, kinke wrote:
> Glad to announce the second beta for LDC 1.13:
> 
> * Based on D 2.083.0+ (yesterday's DMD stable).
> * The Windows packages are now fully self-sufficient, i.e., a Visual Studio/C++ Build Tools installation isn't required anymore.
> * Substantial debug info improvements.
> * New command-line option `-fvisibility=hidden` to hide functions/globals not marked as export, to reduce the size of shared libraries.
> 
> Full release log and downloads: https://github.com/ldc-developers/ldc/releases/tag/v1.13.0-beta2

I see that the bundled Dub has been updated to the latest version. Awesome, thanks.

-- 
/Jacob Carlborg
November 24
On Friday, 23 November 2018 at 09:54:13 UTC, Andrea Fontana wrote:
> Nice! It seems that docker image is not updated since 1.9.0 (but it is tagged as "automated build"). Could you please update that image?
>
> https://hub.docker.com/r/dlanguage/ldc/

There's no official docker image for LDC. The one you are referring to seems abandonded (latest DMD is 2.080...); this one seems to have taken over and provides the latest beta:

https://hub.docker.com/u/dlang2/
November 29
On Thursday, 22 November 2018 at 16:54:55 UTC, Joakim wrote:
> On Thursday, 22 November 2018 at 16:36:22 UTC, H. S. Teoh wrote:
>> On Thu, Nov 22, 2018 at 01:25:53PM +0000, Joakim via Digitalmars-d-announce wrote:
>>> On Wednesday, 21 November 2018 at 10:43:55 UTC, kinke wrote:
>>> > Glad to announce the second beta for LDC 1.13:
>>> > 
>>> > * Based on D 2.083.0+ (yesterday's DMD stable).
>> [...]
>>> I've added native builds for Android, including Android/x86_64 for the first time. Several tests for std.variant segfault, likely because of the 128-bit real causing x64 codegen issues, but most everything else passes.
>> [...]
>>
>> What's the status of cross-compiling to 64-bit ARM?  On the wiki you wrote that it doesn't fully work yet.  Does it work with this new release?
>
> It's been mostly working since 1.11. That note on the wiki links to this tracker issue that lists the few remaining holes, mostly just extending Phobos support for 80-bit precision out to full 128-bit Quadruple precision in a few spots and finishing off the C/C++ compatibility:
>
> https://github.com/ldc-developers/ldc/issues/2153

Btw, if you ever want to check the current status of the AArch64 port, all you have to do is look at the logs for the latest run of the ldc AArch64 CI, which kinke setup and is run for every ldc PR, on this dashboard:

https://app.shippable.com/github/ldc-developers/ldc/dashboard

Clicking on the last job on the master branch, expanding the build_ci output in the log, then doing the same for the stdlib tests, I see only five Phobos modules with failing tests. Three are mentioned in the tracker issue above, while std.complex has a single assert that trips, because it's a few bits off at 113-bit precision, which is still much more accurate than the 64-bit precision (or less) it's normally run at on x86/x64.

Also, a single assert on std.algorithm.sorting trips for the same reason as a handful of tests in std.math: -real.nan at compile-time is output as real.nan by ldc running natively on AArch64, though not when cross-compiling. std.internal.math.gammafunction works fine at 64-bit precision on AArch64, but only a couple of the 100 or so constant reals it uses are at full 113-bit precision, so several tests assert that only allow a couple bits to be off from full real precision. Obviously that only matters if you need full 113-bit precision from that module.

kinke recently disabled the tests for core.thread on the CI because they're super-flaky on linux/glibc/AArch64, while I haven't had that problem with Bionic/AArch64. You will see more tests failing if you cross-compile from x64, because of the mismatch between 64-bit precision for compile-time reals and 113-bit precision for runtime reals on AArch64. Also, you can see the 10-12 modules that assert in the dmd compiler testsuite earlier in that log, most because of missing core.stdc.stdarg.va_arg support to call C varargs on AArch64.

That's about it: help is appreciated on tightening those last few screws.