[Issue 20893] [REG 2.087] 32-bit arithmetic goes wrong

2020-06-05 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=20893

Dlang Bot  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--- Comment #4 from Dlang Bot  ---
dlang/dmd pull request #11230 "fix Issue 20893 - [REG 2.087] 32-bit arithmetic
goes wrong" was merged into stable:

- 58731f94cecf586c4ebeba1573b7e1646b031a79 by Walter Bright:
  fix Issue 20893 - [REG 2.087] 32-bit arithmetic goes wrong

https://github.com/dlang/dmd/pull/11230

--


[Issue 20893] [REG 2.087] 32-bit arithmetic goes wrong

2020-06-05 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=20893

Dlang Bot  changed:

   What|Removed |Added

   Keywords||pull

--- Comment #3 from Dlang Bot  ---
@WalterBright created dlang/dmd pull request #11230 "fix Issue 20893 - [REG
2.087] 32-bit arithmetic goes wrong" fixing this issue:

- fix Issue 20893 - [REG 2.087] 32-bit arithmetic goes wrong

https://github.com/dlang/dmd/pull/11230

--


[Issue 20893] [REG 2.087] 32-bit arithmetic goes wrong

2020-06-01 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=20893

--- Comment #2 from Basile-z  ---
according to digger, caused by https://github.com/dlang/dmd/pull/9722

full bisection report:

> digger: Finding shortest path between 
> 717f0aba51531c140d1a41ff8da3020443b6d523 > and 
> 2e4afcd30657009f75394aaead63721c5eac0e38...
> digger: 0 commits (about 0 tests) remaining.
> digger: 2e4afcd30657009f75394aaead63721c5eac0e38 is the first bad commit
> commit 2e4afcd30657009f75394aaead63721c5eac0e38
> Author: Walter Bright 
> Date:   Sat Apr 27 22:04:40 2019 -0700
> 
> dmd: Merge pull request #9722 from WalterBright/cod2-const2
> 
> https://github.com/dlang/dmd/pull/9722
> 
> cod2.c: improve details a bit pt 2
> 
> diff --git a/dmd b/dmd
> index d8d17ee3e..9203ab647 16
> --- a/dmd
> +++ b/dmd
> @@ -1 +1 @@
> -Subproject commit d8d17ee3efcdd53b39f29530879fde77980ab18b
> +Subproject commit 9203ab6477f4c8e816c60803112a554d19499f4d
> digger: Bisection completed successfully.

--


[Issue 20893] [REG 2.087] 32-bit arithmetic goes wrong

2020-06-01 Thread d-bugmail--- via Digitalmars-d-bugs
https://issues.dlang.org/show_bug.cgi?id=20893

Basile-z  changed:

   What|Removed |Added

   Keywords||wrong-code
 CC||b2.t...@gmx.com
 OS|Windows |All

--- Comment #1 from Basile-z  ---
reduced w/o phobos, test case is a "runnable" TC:

---
#!dmd -O -inline -m32

int f (int n)
{
foreach (i; 0..n) {}
return 10;
}

int c (int a, int b)
{
return (f(a) * 1L * f(b)) % 1000;
}

void main ()
{
int[] a = [1];
assert(c(2 - 1, 2) == 100);
}
---

--