[Haskell-cafe] Optimization flag changing result of code execution

kudah kudahkukarek at gmail.com
Wed Jul 17 13:22:36 CEST 2013


Test triggers the bug, only zeros and ones like you said, but
only for native-sized types:

-O2:
Int
0 0 0 0 0 1 0 0 1 0 1 1 0 0 0 0 0 0 0 0 
Int32
41 37 25 85 27 84 70 8 70 32 36 1 14 92 1 74 17 28 38 76 
Int64
37 77 57 75 17 58 28 77 23 51 1 13 50 35 21 11 70 43 6 5 
Word
0 0 1 1 0 0 1 0 0 0 0 0 0 0 0 0 0 1 1 0 
Word32
52 45 86 4 85 44 71 59 91 10 65 89 41 78 84 88 3 60 71 0 
Word64
12 82 25 1 11 14 76 58 1 77 9 25 57 20 41 8 2 29 21 29 

ghci:
Int
53 13 24 58 66 71 19 16 73 54 95 87 2 34 62 67 2 45 56 2 
Int32
41 37 25 85 27 84 70 8 70 32 36 1 14 92 1 74 17 28 38 76 
Int64
37 77 57 75 17 58 28 77 23 51 1 13 50 35 21 11 70 43 6 5 
Word
41 19 99 69 27 58 92 45 9 38 51 39 50 14 2 21 25 94 96 2 
Word32
52 45 86 4 85 44 71 59 91 10 65 89 41 78 84 88 3 60 71 0 
Word64
12 82 25 1 11 14 76 58 1 77 9 25 57 20 41 8 2 29 21 29 

I run a 32-bit system, as I've said before.

> Gentoo Linux _i686_ 3.8.2-pf

Could perhaps be something with my system, I'll test on Ubuntu later
today, and if there are no problems with compiling mwc-random on ghc
git — on it too.

On Wed, 17 Jul 2013 12:19:29 +0400 Aleksey Khudyakov
<alexey.skladnoy at gmail.com> wrote:

> On 10 July 2013 14:10, kudah <kudahkukarek at gmail.com> wrote:
> > Yes, it does. Without optimizations the result is
> > "ndgorsfesnywaiqraloa", while with optimizations the result is
> > always "aaaaaaaaaabbaaaaaaaa".
> >
> Sorry for taking so long. So problem is uniformR. You can reproduce
> bug reliably and I cannot. Are you on 32-bit system? I only tested on
> 64-bit ones. If this isn't the case I'm out of ideas.
> 
> I finally wrote test case that doesn't depends on anything besides
> mwc-random (it's
> in attachment). Could you check whether it still triggers the bug




More information about the Haskell-Cafe mailing list