github ldc-developers/ldc v1.2.0
LDC 1.2.0

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

(Changes from 1.2.0-beta2 release are marked with (new).)

Big news

  • Frontend, druntime and Phobos are at version 2.072.2.

New features

Platform support

  • Supports LLVM 3.5 - 4.0.
  • Exception backtrace robustness has been significantly improved.
  • Emission of reals with differing precision to the host platform's real has been fixed.
    (The compiler still uses the host platform's D real type to represent compile-time floating-point values, so parsing of literals and CTFE is restricted to the host real precision. For instance, LDC on AArch64 with its quad-precision reals would now make for a universal cross-compiler. On the other hand, cross-compiling from ARM to x86 with 80 bit reals still does not work – for example, real.max would silently overflow at compile-time and be emitted as 80-bit infinity.)

Bug fixes

  • Compilation error with DMD 2.074 host compiler. (new)
  • LLVM error when accessing typeid(null) (#2062). (new)
  • Some LLVM intrinsics not available for LLVM ≥ 4.0 (#2037).
  • Spurious crashes on OS X user program shutdown when linking against static druntime lib.
  • Lexing floating-point literals may fail on PowerPC (#2046).
  • LDC crashes when trying to repaint static arrays (#2033).
  • No stack trace on Linux (#2004) and Windows (#1976, ldc-developers/druntime#85).
  • Generated documentation file is immediately deleted when compiling at the same time.
  • LDMD doesn't append default file extension if -of option doesn't contain any (#2001, #2002).

Building LDC

  • Building LDC requires a preinstalled D compiler.

Internals

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.