github ldc-developers/ldc v1.10.0
LDC 1.10.0

latest releases: dmd-rewrite-v2.108.1, dmd-rewrite-v2.108.1-rc.1, v1.38.0-beta1...
5 years ago

(Changes since 1.10.0-beta2 are marked with (new).)

Big news

  • Frontend, druntime and Phobos are at version 2.080.1. (#2665, #2719, #2737) (new)
    • No support for Objective-C class/static methods yet. (#2670)
  • Breaking Win64 extern(D) ABI change: Pass vectors directly in registers, analogous to the MS vector calling convention. (#2714)
  • Config file: For cross-compilation, support additional sections named as regex for specific target triples, e.g., "86(_64)?-.*-linux": { … };; see the comment in etc/ldc2.conf. (#2718)

Platform support

  • Supports LLVM 3.7 - 6.0.
  • Windows: Supports Visual Studio/C++ Build Tools 2015 and 2017.
  • Alpine linux/x64: built against Musl libc to support Docker images based on the Alpine distro, requires the llvm5-libs, musl-dev, and gcc packages to run and link D apps and the tzdata and libcurl packages for certain stdlib modules.

Bug fixes

  • CMake and druntime fixes for DragonFlyBSD, thanks Diederik! (#2690, #2691, #2692, ldc-developers/druntime#138, ldc-developers/druntime#139, ldc-developers/phobos#64)
  • DMD-style inline asm label naming issue in overloaded functions. (#2667, #2694)
  • Linux: misc. exception stack trace fixes & extensions, incl. default DWARF v4 debuginfo emission with LLVM 6. (#2677)
  • Predefine version D_HardFloat instead of D_SoftFloat for -float-abi=softfp. (#2678)
  • Bash completion installed to the wrong place with custom CMAKE_INSTALL_PREFIX. (#2679, #2179, #2693)
  • Default to ld.gold linker for ThinLTO on Linux. (#2696)
  • Fix compilation issues on 64-bit macOS with DMD host compiler ≥ 2.079. (#2703, #2704)
  • druntime: Fix core.stdc.stdint.(u)int64_t on 64-bit macOS etc. (#2700)
  • Define D_AVX and D_AVX2 if the target supports them. (#2711)
  • Fix sporadic front-end segfaults. (#2713)
  • Win64: Fix extern(C++) ABI wrt. passing small non-POD structs by value. (#2706)
  • Misc. druntime/Phobos fixes and upstream cherry-picks for ARM, AArch64, MIPS etc.
  • Fix potential LDC crashes when returning static array results from inline IR. (#2729) (new)
  • Win64: Fix terminate handler for VC runtime DLL version 14.14.x.y. (#2739) (new)

Known issues

  • LDC does not zero the padding area of a real variable. This may lead to wrong results if the padding area is also considered. See #770. Does not apply to real members inside structs etc.

Don't miss a new ldc release

NewReleases is sending notifications on new releases.