digitalmars.D.announce - LDC 1.36.0-beta1
Glad to announce the first beta for LDC 1.36. Major changes: * Based on D 2.106.0. * Support for LLVM 17; the prebuilt packages use v17.0.6. * New GDC-compatible CLI options `-fno-{exceptions,moduleinfo,rtti}` to selectively enable some `-betterC` effects. * Support for sample-based PGO via clang-compatible CLI option `-fprofile-sample-use` and `ldc-profgen` tool. Full release log and downloads: https://github.com/ldc-developers/ldc/releases/tag/v1.36.0-beta1 Please give this some extra regression testing if you find the time, as it's the first LDC version with enforced opaque IR pointers, and there might still be related, hard-to-find bugs lurking in our codebase. You can e.g. run *optimized* unittests via `DFLAGS=-O dub run -c unittest -b unittest`. So please help test, and thanks to all contributors & sponsors!
Dec 04 2023
On Tuesday, 5 December 2023 at 00:31:20 UTC, kinke wrote:Glad to announce the first beta for LDC 1.36. Major changes: * Based on D 2.106.0. * Support for LLVM 17; the prebuilt packages use v17.0.6. * New GDC-compatible CLI options `-fno-{exceptions,moduleinfo,rtti}` to selectively enable some `-betterC` effects. * Support for sample-based PGO via clang-compatible CLI option `-fprofile-sample-use` and `ldc-profgen` tool. Full release log and downloads: https://github.com/ldc-developers/ldc/releases/tag/v1.36.0-beta1 Please give this some extra regression testing if you find the time, as it's the first LDC version with enforced opaque IR pointers, and there might still be related, hard-to-find bugs lurking in our codebase. You can e.g. run *optimized* unittests via `DFLAGS=-O dub run -c unittest -b unittest`. So please help test, and thanks to all contributors & sponsors!After upgrade to this version. I get error for betterC. ```sh /ldc/bin/../import/core/internal/array/duplication.d(39): Error: appending to array in `res ~= cast(immutable(Column))e` requires the GC which is not available with -betterC ``` The code is used in ctfe function, I am not sure `~=` or `.idup` cause this problem.
Dec 06 2023
On Wednesday, 6 December 2023 at 15:10:14 UTC, d007 wrote:```sh /ldc/bin/../import/core/internal/array/duplication.d(39): Error: appending to array in `res ~= cast(immutable(Column))e` requires the GC which is not available with -betterC ``` The code is used in ctfe function, I am not sure `~=` or `.idup` cause this problem.Thanks for testing. - This is a new check in the codegen layer; DMD has it, LDC was missing it so far. So if it does work with DMD, please file an LDC issue. - The expected root problem here is that the array-append lowering ends up being codegen'd, even though it's exclusively used for CTFE and so the template instances should be culled from codegen. (The logic for this is in the DMD frontend.)
Dec 06 2023