github ldc-developers/ldc v1.3.0-beta1
LDC 1.3.0-beta1

latest releases: v1.40.0-beta4, v1.40.0-beta3, v1.40.0-beta2...
pre-release7 years ago

Big news

  • Frontend, druntime and Phobos are at version 2.073.2.
  • libconfig was replaced by an ad-hoc parser (in D), getting rid of the build and runtime dependency and shrinking the license file by roughly 50%. Thanks again, Remi! (#2016)
  • LDC now ships with static and shared runtime libs on supported platforms. (#1960)
  • LLVM 3.9+: Static libraries are now generated by LDC (LLVM) by default, not by system ar or lib.exe. This means that LDC can cross-compile and -archive static libs for all supported targets. Command-line option -ar allows specifying an external archiver to be used. (#2030)
  • New command-line options -dip1000, -mv and -mscrtlib (#2041).

New features

  • New function UDA @ldc.attributes.llvmFastMathFlag("contract") that specifically enables floating point operation fusing (fused multiply-add), previously only achievable with @fastmath. (#2060)

Platform support

  • Supports LLVM 3.5 - 4.0.
  • Windows: Supports Visual Studio/Build Tools 2015 and 2017. (#2065)
  • NetBSD: The 2.074 druntime patches have been cherry-picked.

Bug fixes

  • Change format of predefined versions output for DMD compatibility. (#1962)

Building LDC

  • Building LDC requires a preinstalled D compiler.

Internals

  • LDC now features D unittests itself. Just add some to LDC's D modules and they'll be compiled and executed by CI. (#2016)

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.
  • Phobos does not compile on MinGW platform.

Don't miss a new ldc release

NewReleases is sending notifications on new releases.