Thread overview
LDC 1.27.0-beta3
Jul 14
kinke
Jul 15
kinke
Jul 15
evilrat
Jul 15
kinke
July 14

Glad to announce the third beta for LDC 1.27. Some noteworthy changes since beta2:

  • Frontend and druntime/Phobos upgraded to todays's DMD stable.
  • LLVM for prebuilt packages bumped to v12.0.1.
  • New LDC-specific language addition: __traits(initSymbol, <aggregate type>)
  • Fix missed RVO opportunity.

Full release log and downloads: https://github.com/ldc-developers/ldc/releases/tag/v1.27.0-beta3

Please help test, and thanks to all contributors & sponsors!

July 14
On 7/14/2021 12:38 PM, kinke wrote:
> Glad to announce the third beta for LDC 1.27. Some noteworthy changes since beta2:

Nice work!
July 15
Will -fvisibility=public support be upstreamed into dmd?

If yes, it might be worth it to get rid of export as a keyword out right in a DIP (as it introduces the possibility of linker errors that would otherwise not need to exist).
July 15
On Thursday, 15 July 2021 at 02:54:14 UTC, rikki cattermole wrote:
> If yes, it might be worth it to get rid of export as a keyword out right in a DIP (as it introduces the possibility of linker errors that would otherwise not need to exist).

No, that's a bad idea.
July 15
On Thursday, 15 July 2021 at 11:38:10 UTC, Adam D Ruppe wrote:
> On Thursday, 15 July 2021 at 02:54:14 UTC, rikki cattermole wrote:
>> If yes, it might be worth it to get rid of export as a keyword out right in a DIP (as it introduces the possibility of linker errors that would otherwise not need to exist).
>
> No, that's a bad idea.

I fully agree; it's still very useful with `-fvisibility=hidden` to only export what you really want (e.g., in order to quite likely shrink the final size of executables and plugin libs considerably) without the blunt export-everything method (which is nice for libraries like druntime and Phobos).
July 15
On Thursday, 15 July 2021 at 02:54:14 UTC, rikki cattermole wrote:
> Will -fvisibility=public support be upstreamed into dmd?
>
> If yes, it might be worth it to get rid of export as a keyword

Please, no. -fvisibility=public doesn't work in all cases in our experience.
July 15
On Thursday, 15 July 2021 at 11:58:28 UTC, Guillaume Piolat wrote:
> On Thursday, 15 July 2021 at 02:54:14 UTC, rikki cattermole wrote:
>> Will -fvisibility=public support be upstreamed into dmd?
>>
>> If yes, it might be worth it to get rid of export as a keyword
>
> Please, no. -fvisibility=public doesn't work in all cases in our experience.

And there is also DLL export limit on Windows which 65k symbols, yay.
July 15
On Thursday, 15 July 2021 at 13:45:32 UTC, evilrat wrote:
> And there is also DLL export limit on Windows which 65k symbols, yay.

Yep, I've already run into it during testing. ;) - For reference: https://developercommunity.visualstudio.com/t/fix-msvc-65535-symbol-limit-in-lib-files-lnk1189/220174