Re: LDC 1.36.0

2024-01-06 Thread H. S. Teoh via Digitalmars-d-announce
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

2024-01-06 Thread kinke via Digitalmars-d-announce

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

2023-12-06 Thread kinke via Digitalmars-d-announce

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

2023-12-06 Thread d007 via Digitalmars-d-announce

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

2023-12-04 Thread kinke via Digitalmars-d-announce

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!