Re: LDC 1.36.0
On Sat, Jan 06, 2024 at 06:03:54PM +, kinke via Digitalmars-d-announce wrote: > Glad to announce LDC 1.36.0. Major changes: > > * Based on D 2.106.1. > * 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. [...] Awesome! Thanks to everyone involved in making this awesome compiler available! T -- I've been around long enough to have seen an endless parade of magic new techniques du jour, most of which purport to remove the necessity of thought about your programming problem. In the end they wind up contributing one or two pieces to the collective wisdom, and fade away in the rearview mirror. -- Walter Bright
LDC 1.36.0
Glad to announce LDC 1.36.0. Major changes: * Based on D 2.106.1. * 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 Thanks to all contributors & sponsors!
Re: LDC 1.36.0-beta1
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.)
Re: LDC 1.36.0-beta1
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.
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!