Big news
- Frontend, druntime and Phobos are at version 2.076.1 (#2362), including
-betterCsemantics (#2365). - Experimental support for dynamic codegen at runtime (JIT-style) to tune performance-critical parts for the used CPU and/or treat special runtime variables as constants. See UDAs
@dynamicCompile,@dynamicCompileConstinldc.attributes; compile with command-line option-enable-dynamic-compileand use theldc.dynamic_compilemodule to generate the code at runtime before invoking it. Congratulations to Ivan Butygin for implementing this non-trivial feature! (#2293) - Many
std.mathfunctions are now CTFE-able. (#2259)
Platform support
- Supports LLVM 3.7 - 5.0.
- Windows: Supports Visual Studio/C++ Build Tools 2015 and 2017.
- Android: A native 32-bit ARM package for the Termux app is included, install it with
dpkg -i ldc-beta_1.6.0_arm.deb. To cross-compile, see the wiki.
Bug fixes
Known issues
- LDC does not zero the padding area of a
realvariable. This may lead to wrong results if the padding area is also considered. See #770. Does not apply torealmembers inside structs etc. - Phobos does not compile on MinGW platform.
- ThinLTO may not work well with the
ld.bfdlinker, useld.goldinstead (-linker=gold).