github ldc-developers/ldc v1.13.0-beta2
LDC 1.13.0-beta2

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

(Changes since 1.13.0-beta1 are marked with (new).)

Big news

  • Frontend, druntime and Phobos are at version 2.083.0+. (#2878, #2893, #2920) (new)
  • The Windows packages are now fully self-sufficient, i.e., a Visual Studio/C++ Build Tools installation isn't required anymore, as we now ship with MinGW-w64-based libraries, similar to DMD. Check out the included README.txt for all relevant details. (dlang/installer#346, #2886)
  • Debug info improvements:
    • For GDB: printing global and imported symbols, non-member and member function calls. (#2826)
    • For Visual Studio and mago: names, by-value params, nested variables. (#2895, #2908, #2909, #2912) (new)
    • Associative arrays now showing up properly (at least with mago), not as opaque void* anymore. (#2869) (new)
    • -gc now translates D names to C++ ones, e.g., to use the regular Visual Studio debugger (bypassing mago) and as preparation for VS Code debugging with Microsoft's C/C++ plug-in (screenshots). Thanks to Oleksandr for this contribution and the AA fix! (#2869) (new)
  • New command-line option -fvisibility=hidden to hide functions/globals not marked as export (for non-Windows targets), primarily to reduce the size of shared libraries. Thanks to Andrey for stepping up! (#2894) (new)
  • Dropped support for LLVM 3.7 and 3.8. (#2872)
  • Linux: now defaulting to ld.gold linker in general, not just with -flto=thin, as buggy older ld.bfd versions may wrongly strip out required symbols (change with -linker). (#2870)
  • New CMake option COMPILE_D_MODULES_SEPARATELY to reduce the time required to build LDC with many CPU cores and/or for iterative development. (#2914) (new)

Platform support

Bug fixes

  • 32-bit Android/ARM regression introduced in v1.12. (#2892)
  • Non-Windows x86_64 ABI fixes wrt. what's passed in registers, relevant for C[++] interop. (#2864)
  • Some issues with beta1's newly bundled Windows libraries. (#2900, #2903) (new)
  • Alignment of scope allocated class instances. (#2919) (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.