(Changes since 1.16.0-beta1 are marked with (new).)
Big news
- Frontend, druntime and Phobos are at version 2.086.0+, incl. a DIP1008 fix. (#3062, #3076)
- Non-Windows x86: Faster
real
versions ofstd.math.{tan,expi}
. (#2855) (new)
Platform support
- Supports LLVM 3.9 - 8.0 (new: incl. 7.1).
Bug fixes
- Make
pragma(LDC_no_typeinfo)
actually elide TypeInfo emission for structs, classes and interfaces. (#3068) - Windows: Fix DLL entry point in MinGW-based libs. (ldc-developers/mingw-w64-libs@8d930c1) (new)
- WebAssembly: Use
--export-dynamic
when linking with LLD 8+. (#3023, #3072) (new) - Fix corrupt
this
in functions nested in in/out contracts. (45460a1) (new) - Fix identity comparisons of integral vectors. (a44c78f) (new)
- Improved handling of unsupported vector ops. (a44c78f) (new)
Known issues
- Buggy older
ld.bfd
linker versions may wrongly strip out required symbols, e.g., ModuleInfos (so that e.g. no module ctors/dtors are run). LDC defaults told.gold
on Linux. - 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 toreal
members inside structs etc.