Re: Beta 2.078.2
if necessary, to help with transition, one could add a hidden flag `-log_when_issue_18315_occurred` that would log stacktrace (or maybe user defined function) when hitting this condition at runtime: ``` void main(){ fun(int.min); } void fun(int v){ writeln(v>0); } ``` dmd -log_when_issue_18315_occurred -run main.d WARNING_18315 at (shows stacktrace): old:true, new:false false On Sun, Feb 4, 2018 at 3:01 PM, Timothee Courwrote: > thanks @aG0aep6G for this PR https://github.com/dlang/dmd/pull/7841 to fix it. > this should be in point release because: > * ldc2 has correct behavior > * the bug disappears with `-O` > so the argument that ppl would rely on it is moot > > > On Fri, Feb 2, 2018 at 6:37 AM, Steven Schveighoffer via > Digitalmars-d-announce wrote: >> On 2/2/18 4:29 AM, Seb wrote: >>> >>> On Friday, 2 February 2018 at 08:34:32 UTC, Antonio Corbi wrote: >> >> Wouldn't it be good to include a fix for errors like produced by int.min assigned to a variable (https://forum.dlang.org/post/p4l7kt$80d$1...@digitalmars.com) in a point release like this? >>> >>> >>> No, while I understand that you would like this to be fixed, this change >>> might be disruptive - you never know on what weird behavior people rely. >>> Anything potentially breaking existing code can't be part of a patch >>> release. >> >> >> In some cases, yes, we need to have a deprecation period as people may >> depend on the behavior. >> >> In this case, however, the codegen is simply wrong. It can be fixed >> immediately. I would hazard to guess that nobody is depending on int.min >> being greater than 0. >> >>> Also AFAICT no one has submitted a PR to fix the issue you referenced, so >>> it's a hypothetical question (for now). >> >> >> I would suggest to would-be fixers, just do the correct thing that may be >> less performant, and we can worry about optimizing later (and add a unit >> test of course!). There is nothing worse than a compiler that doesn't emit >> the code you expect it to. >> >> -Steve
Re: Beta 2.078.2
thanks @aG0aep6G for this PR https://github.com/dlang/dmd/pull/7841 to fix it. this should be in point release because: * ldc2 has correct behavior * the bug disappears with `-O` so the argument that ppl would rely on it is moot On Fri, Feb 2, 2018 at 6:37 AM, Steven Schveighoffer via Digitalmars-d-announcewrote: > On 2/2/18 4:29 AM, Seb wrote: >> >> On Friday, 2 February 2018 at 08:34:32 UTC, Antonio Corbi wrote: > > >>> Wouldn't it be good to include a fix for errors like produced by int.min >>> assigned to a variable >>> (https://forum.dlang.org/post/p4l7kt$80d$1...@digitalmars.com) in a point >>> release like this? >> >> >> No, while I understand that you would like this to be fixed, this change >> might be disruptive - you never know on what weird behavior people rely. >> Anything potentially breaking existing code can't be part of a patch >> release. > > > In some cases, yes, we need to have a deprecation period as people may > depend on the behavior. > > In this case, however, the codegen is simply wrong. It can be fixed > immediately. I would hazard to guess that nobody is depending on int.min > being greater than 0. > >> Also AFAICT no one has submitted a PR to fix the issue you referenced, so >> it's a hypothetical question (for now). > > > I would suggest to would-be fixers, just do the correct thing that may be > less performant, and we can worry about optimizing later (and add a unit > test of course!). There is nothing worse than a compiler that doesn't emit > the code you expect it to. > > -Steve
Re: Beta 2.078.2
On 2/2/18 4:29 AM, Seb wrote: On Friday, 2 February 2018 at 08:34:32 UTC, Antonio Corbi wrote: Wouldn't it be good to include a fix for errors like produced by int.min assigned to a variable (https://forum.dlang.org/post/p4l7kt$80d$1...@digitalmars.com) in a point release like this? No, while I understand that you would like this to be fixed, this change might be disruptive - you never know on what weird behavior people rely. Anything potentially breaking existing code can't be part of a patch release. In some cases, yes, we need to have a deprecation period as people may depend on the behavior. In this case, however, the codegen is simply wrong. It can be fixed immediately. I would hazard to guess that nobody is depending on int.min being greater than 0. Also AFAICT no one has submitted a PR to fix the issue you referenced, so it's a hypothetical question (for now). I would suggest to would-be fixers, just do the correct thing that may be less performant, and we can worry about optimizing later (and add a unit test of course!). There is nothing worse than a compiler that doesn't emit the code you expect it to. -Steve
Re: Beta 2.078.2
On Friday, 2 February 2018 at 09:29:15 UTC, Seb wrote: On Friday, 2 February 2018 at 08:34:32 UTC, Antonio Corbi wrote: On Thursday, 1 February 2018 at 18:21:22 UTC, Seb wrote: [...] Wouldn't it be good to include a fix for errors like produced by int.min assigned to a variable (https://forum.dlang.org/post/p4l7kt$80d$1...@digitalmars.com) in a point release like this? A. Corbi No, while I understand that you would like this to be fixed, this change might be disruptive - you never know on what weird behavior people rely. Anything potentially breaking existing code can't be part of a patch release. Also AFAICT no one has submitted a PR to fix the issue you referenced, so it's a hypothetical question (for now). Thanks Seb, that makes sense. A. Corbi
Re: Beta 2.078.2
On Friday, 2 February 2018 at 08:34:32 UTC, Antonio Corbi wrote: On Thursday, 1 February 2018 at 18:21:22 UTC, Seb wrote: On Thursday, 1 February 2018 at 17:32:09 UTC, Andrew Benton wrote: On Thursday, 1 February 2018 at 16:01:18 UTC, Martin Nowak wrote: First beta for the 2.078.2 patch release. Contains a major regression fix for hashtable array comparison and comes with more reliable retries and fallback mirror usage for dub (https://github.com/dlang/dub/pull/1339). http://dlang.org/download.html#dmd_beta http://dlang.org/changelog/2.078.2.html Please report any bugs at https://issues.dlang.org - -Martin Changelog page returns a 404 It got lost in the merge queue - https://github.com/dlang/dlang.org/pull/2158 I just merged it. It should be up in a few minutes. Wouldn't it be good to include a fix for errors like produced by int.min assigned to a variable (https://forum.dlang.org/post/p4l7kt$80d$1...@digitalmars.com) in a point release like this? A. Corbi No, while I understand that you would like this to be fixed, this change might be disruptive - you never know on what weird behavior people rely. Anything potentially breaking existing code can't be part of a patch release. Also AFAICT no one has submitted a PR to fix the issue you referenced, so it's a hypothetical question (for now).
Re: Beta 2.078.2
On Thursday, 1 February 2018 at 18:21:22 UTC, Seb wrote: On Thursday, 1 February 2018 at 17:32:09 UTC, Andrew Benton wrote: On Thursday, 1 February 2018 at 16:01:18 UTC, Martin Nowak wrote: First beta for the 2.078.2 patch release. Contains a major regression fix for hashtable array comparison and comes with more reliable retries and fallback mirror usage for dub (https://github.com/dlang/dub/pull/1339). http://dlang.org/download.html#dmd_beta http://dlang.org/changelog/2.078.2.html Please report any bugs at https://issues.dlang.org - -Martin Changelog page returns a 404 It got lost in the merge queue - https://github.com/dlang/dlang.org/pull/2158 I just merged it. It should be up in a few minutes. Wouldn't it be good to include a fix for errors like produced by int.min assigned to a variable (https://forum.dlang.org/post/p4l7kt$80d$1...@digitalmars.com) in a point release like this? A. Corbi
Re: Beta 2.078.2
On Thursday, 1 February 2018 at 17:32:09 UTC, Andrew Benton wrote: On Thursday, 1 February 2018 at 16:01:18 UTC, Martin Nowak wrote: First beta for the 2.078.2 patch release. Contains a major regression fix for hashtable array comparison and comes with more reliable retries and fallback mirror usage for dub (https://github.com/dlang/dub/pull/1339). http://dlang.org/download.html#dmd_beta http://dlang.org/changelog/2.078.2.html Please report any bugs at https://issues.dlang.org - -Martin Changelog page returns a 404 It got lost in the merge queue - https://github.com/dlang/dlang.org/pull/2158 I just merged it. It should be up in a few minutes.
Re: Beta 2.078.2
On Thursday, 1 February 2018 at 16:01:18 UTC, Martin Nowak wrote: First beta for the 2.078.2 patch release. Contains a major regression fix for hashtable array comparison and comes with more reliable retries and fallback mirror usage for dub (https://github.com/dlang/dub/pull/1339). http://dlang.org/download.html#dmd_beta http://dlang.org/changelog/2.078.2.html Please report any bugs at https://issues.dlang.org - -Martin Changelog page returns a 404