
#16201: ghci063 failing on Darwin ---------------------------------+---------------------------------------- Reporter: bgamari | Owner: (none) Type: bug | Status: new Priority: highest | Milestone: 8.8.1 Component: Compiler | Version: 8.6.3 Resolution: | Keywords: ci-breakage Operating System: MacOS X | Architecture: Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: | Differential Rev(s): Wiki Page: | ---------------------------------+---------------------------------------- Comment (by int-index): I figured it out, `touch -r` leads to precision loss: {{{ ghc(master)*$ echo "" > file ghc(master)*$ /nix/store/acnfbicd84bnya2l2dq868b5l482qihw- coreutils-8.30/bin/stat file File: file Size: 1 Blocks: 8 IO Block: 4096 regular file Device: 1000004h/16777220d Inode: 14905419 Links: 1 Access: (0644/-rw-r--r--) Uid: ( 501/int-index) Gid: ( 20/ staff) Access: 2019-02-25 01:11:23.807505116 +0300 Modify: 2019-02-25 01:11:23.807627350 +0300 Change: 2019-02-25 01:11:23.807627350 +0300 Birth: 2019-02-25 01:11:23.807505116 +0300 ghc(master)*$ touch -r file file ghc(master)*$ /nix/store/acnfbicd84bnya2l2dq868b5l482qihw- coreutils-8.30/bin/stat file File: file Size: 1 Blocks: 8 IO Block: 4096 regular file Device: 1000004h/16777220d Inode: 14905419 Links: 1 Access: (0644/-rw-r--r--) Uid: ( 501/int-index) Gid: ( 20/ staff) Access: 2019-02-25 01:11:23.807505000 +0300 Modify: 2019-02-25 01:11:23.807627000 +0300 Change: 2019-02-25 01:11:39.159813166 +0300 Birth: 2019-02-25 01:11:23.807505116 +0300 }}} The test passes nondeterministically when the last three digits are zero even before `touch`, I think. I was lucky to observe this locally after only a few runs, otherwise I would probably not even attempt to debug this! The solution is to do `touch -r B.hs B.hs` to nullify the digits before we run other `touch -r` commands. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/16201#comment:4 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler