Re: [GHC] #5188: Runtime error when allocating lots of memory

#5188: Runtime error when allocating lots of memory ---------------------------------+--------------------------- Reporter: knyblad | Owner: Type: bug | Status: patch Priority: low | Milestone: 7.6.2 Component: GHCi | Version: 6.12.1 Resolution: | Keywords: Operating System: Linux | Architecture: x86 Type of failure: None/Unknown | Difficulty: Unknown Test Case: | Blocked By: Blocking: | Related Tickets: ---------------------------------+--------------------------- Comment (by rwbarton): Right, the issue is that on amd64/Linux, `sizeof(nat)` is 4 and `sizeof(W_)` is 8, so overflow can never occur, which gcc warns about, and validate builds with `-Wextra -Werror`. Annoying. Austin and I discussed this on IRC and here are a couple possible workarounds we came up with. 1. Wrap the test in an `#if` that tests `sizeof(nat)` and `sizeof(W_)` to determine whether overflow is possible. Portable, but fiddly. 2. Disable gcc warnings using `#pragma GCC diagnostic` pragmas around the test, themselves conditionalized to gcc. Less fiddly, but GHC doesn't currently use this method to disable any warnings and I somewhat hesitate to be the first. I also haven't tested that this really works. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/5188#comment:12 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler
participants (1)
-
GHC