digitalmars.D.announce - First Beta 2.106.0
- Iain Buclaw (8/8) Nov 01 2023 Glad to announce the first beta for the 2.106.0 release, ♥ to the
- Andrej Mitrovic (14/22) Nov 01 2023 Thanks Iain.
- Richard (Rikki) Andrew Cattermole (2/2) Nov 01 2023 Anything that requires the AA from CTFE to cross into runtime should now...
- Iain Buclaw (8/16) Nov 02 2023 Yes, there are a few kinks that need ironing out though,
- Imperatorn (12/20) Nov 02 2023 Great work!
- Iain Buclaw (3/8) Nov 02 2023 `-nothrow` is equivalent to putting `nothrow:` at the top of
- Imperatorn (2/10) Nov 02 2023 Ok, then it makes sense. Thanks!
- Andrej Mitrovic (6/18) Nov 02 2023 And it also mentions:
- Iain Buclaw (6/22) Nov 07 2023 Recursively adding `nothrow:` was implied but I err towards
- Andrej Mitrovic (2/4) Nov 08 2023 Alright thanks for clarifying!
- Andrea Fontana (3/11) Nov 04 2023 Static AA init, finally! Great!
- Steven Schveighoffer (7/9) Nov 14 2023 Kind of buried in the changelog (because it's just a few issues
- Adam Wilson (3/5) Nov 14 2023 I second this.
- Andrey Zherikov (2/10) Nov 14 2023 Filed https://issues.dlang.org/show_bug.cgi?id=24246 for ICE
- Imperatorn (3/16) Nov 15 2023 Looks like illegal instruction.
Glad to announce the first beta for the 2.106.0 release, ♥ to the 33 contributors. http://dlang.org/download.html#dmd_beta http://dlang.org/changelog/2.106.0.html As usual please report any bugs at https://issues.dlang.org -Iain on behalf of the Dlang Core Team
Nov 01 2023
On Thursday, 2 November 2023 at 00:57:23 UTC, Iain Buclaw wrote:Glad to announce the first beta for the 2.106.0 release, ♥ to the 33 contributors. http://dlang.org/download.html#dmd_beta http://dlang.org/changelog/2.106.0.html As usual please report any bugs at https://issues.dlang.org -Iain on behalf of the Dlang Core TeamThanks Iain. For [Global variables can now be initialized with Associative Arrays](https://dlang.org/changelog/2.106.0.html#dmd.static-assoc-array), what exactly is it meant by "globals"? Variables in module-scope? Static variables? Does it also affect AAs in structs? For example: ```d struct S { static int[int] x = [4:4]; } ``` Will this now work?
Nov 01 2023
Anything that requires the AA from CTFE to cross into runtime should now work. If it doesn't that is a bug.
Nov 01 2023
On Thursday, 2 November 2023 at 02:07:13 UTC, Andrej Mitrovic wrote:Does it also affect AAs in structs? For example: ```d struct S { static int[int] x = [4:4]; } ``` Will this now work?Yes, there are a few kinks that need ironing out though, hopefully before the RC in a couple weeks. One open PR https://github.com/dlang/dmd/pull/15744 and another found issue https://issues.dlang.org/show_bug.cgi?id=24209
Nov 02 2023
On Thursday, 2 November 2023 at 00:57:23 UTC, Iain Buclaw wrote:Glad to announce the first beta for the 2.106.0 release, ♥ to the 33 contributors. http://dlang.org/download.html#dmd_beta http://dlang.org/changelog/2.106.0.html As usual please report any bugs at https://issues.dlang.org -Iain on behalf of the Dlang Core TeamGreat work! I'm just wondering about the -nothrow switch name: "Adding the -nothrow switch to the compiler causes the stack unwinders to not be added and enables the optimizations. This capability is already there for -betterC code, this would just enable it for regular D code." Why is it named nothrow if what it's really doing is not adding the unwinders? A nothrow switch could imply it's doing something in relationship to nothrow, which it doesn't (unless it's secretly enforcing nothrow in the codebase).
Nov 02 2023
On Thursday, 2 November 2023 at 07:49:32 UTC, Imperatorn wrote:Why is it named nothrow if what it's really doing is not adding the unwinders? A nothrow switch could imply it's doing something in relationship to nothrow, which it doesn't (unless it's secretly enforcing nothrow in the codebase).`-nothrow` is equivalent to putting `nothrow:` at the top of every compiled module.
Nov 02 2023
On Thursday, 2 November 2023 at 09:13:55 UTC, Iain Buclaw wrote:On Thursday, 2 November 2023 at 07:49:32 UTC, Imperatorn wrote:Ok, then it makes sense. Thanks!Why is it named nothrow if what it's really doing is not adding the unwinders? A nothrow switch could imply it's doing something in relationship to nothrow, which it doesn't (unless it's secretly enforcing nothrow in the codebase).`-nothrow` is equivalent to putting `nothrow:` at the top of every compiled module.
Nov 02 2023
On Thursday, 2 November 2023 at 09:13:55 UTC, Iain Buclaw wrote:On Thursday, 2 November 2023 at 07:49:32 UTC, Imperatorn wrote:That kind of goes against what it says in the changelog:Why is it named nothrow if what it's really doing is not adding the unwinders? A nothrow switch could imply it's doing something in relationship to nothrow, which it doesn't (unless it's secretly enforcing nothrow in the codebase).`-nothrow` is equivalent to putting `nothrow:` at the top of every compiled module.Putting nothrow: at the top of the module doesn't influence the status for member functions in a class or struct, the nothrow: will have to be repeated for each class/struct.And it also mentions:The switch does not affect semantic analysisBut surely it has effect on semantics? I assume scope statements are disallowed if -nothrow is set and would lead to compilation errors?
Nov 02 2023
On Friday, 3 November 2023 at 04:33:12 UTC, Andrej Mitrovic wrote:On Thursday, 2 November 2023 at 09:13:55 UTC, Iain Buclaw wrote:Recursively adding `nothrow:` was implied but I err towards brevity.On Thursday, 2 November 2023 at 07:49:32 UTC, Imperatorn wrote:That kind of goes against what it says in the changelog:Why is it named nothrow if what it's really doing is not adding the unwinders? A nothrow switch could imply it's doing something in relationship to nothrow, which it doesn't (unless it's secretly enforcing nothrow in the codebase).`-nothrow` is equivalent to putting `nothrow:` at the top of every compiled module.And it also mentions:Right, statements that depend on exceptions as part of their operation can't possibly work because no unwind tables, eh regions, etc... are generated.The switch does not affect semantic analysisBut surely it has effect on semantics? I assume scope statements are disallowed if -nothrow is set and would lead to compilation errors?
Nov 07 2023
On Wednesday, 8 November 2023 at 05:53:32 UTC, Iain Buclaw wrote:Recursively adding `nothrow:` was implied but I err towards brevity.Alright thanks for clarifying!
Nov 08 2023
On Thursday, 2 November 2023 at 00:57:23 UTC, Iain Buclaw wrote:Glad to announce the first beta for the 2.106.0 release, ♥ to the 33 contributors. http://dlang.org/download.html#dmd_beta http://dlang.org/changelog/2.106.0.html As usual please report any bugs at https://issues.dlang.org -Iain on behalf of the Dlang Core TeamStatic AA init, finally! Great! Andrea
Nov 04 2023
On Thursday, 2 November 2023 at 00:57:23 UTC, Iain Buclaw wrote:Glad to announce the first beta for the 2.106.0 release, ♥ to the 33 contributors.Kind of buried in the changelog (because it's just a few issues closed) is a really significant change coming to this version: the much-hated "statement is not reachable" warning is being removed. This might be one of the greatest releases of D ever. -Steve
Nov 14 2023
On Tuesday, 14 November 2023 at 17:44:11 UTC, Steven Schveighoffer wrote:This might be one of the greatest releases of D ever. -SteveI second this.
Nov 14 2023
On Thursday, 2 November 2023 at 00:57:23 UTC, Iain Buclaw wrote:Glad to announce the first beta for the 2.106.0 release, ♥ to the 33 contributors. http://dlang.org/download.html#dmd_beta http://dlang.org/changelog/2.106.0.html As usual please report any bugs at https://issues.dlang.org -Iain on behalf of the Dlang Core TeamFiled https://issues.dlang.org/show_bug.cgi?id=24246 for ICE
Nov 14 2023
On Tuesday, 14 November 2023 at 23:17:32 UTC, Andrey Zherikov wrote:On Thursday, 2 November 2023 at 00:57:23 UTC, Iain Buclaw wrote:Looks like illegal instruction.Glad to announce the first beta for the 2.106.0 release, ♥ to the 33 contributors. http://dlang.org/download.html#dmd_beta http://dlang.org/changelog/2.106.0.html As usual please report any bugs at https://issues.dlang.org -Iain on behalf of the Dlang Core TeamFiled https://issues.dlang.org/show_bug.cgi?id=24246 for ICE
Nov 15 2023