Skip to content

Sanity checker false positive (presumably)

When trying to debug an unrelated problem, I found a Sanity Checker failure. Initially I though this was my bug, but it remained after I left the bug. I stripped the program right down to a minimal example which still causes sanity check failures.

import Graphics.Rendering.OpenGL
import Graphics.UI.GLUT

main = do
  (progName,args) <-  getArgsAndInitialize
  createWindow progName
  displayCallback $= display
  display

display = color $ Color4 1 0 0 (1::GLfloat)
  
  
{-

On my machine this reliably trips the sanity checker:

jules$ ghc -debug -fforce-recomp --make sanityminimal.hs  && ./sanityminimal +RTS -DS
[1 of 1] Compiling Main             ( sanityminimal.hs, sanityminimal.o )
Linking sanityminimal ...
sanityminimal: internal error: ASSERTION FAILED: file Sanity.c, line 241

    (GHC version 6.8.3 for i386_apple_darwin)
    Please report this as a GHC bug:  http://www.haskell.org/ghc/reportabug
Abort trap

-}

I am running 6.8.3 here but I got someone to test 6.10.1 with the same result.

Trac metadata
Trac field Value
Version 6.10.1
Type Bug
TypeOfFailure OtherFailure
Priority normal
Resolution Unresolved
Component Compiler
Test case
Differential revisions
BlockedBy
Related
Blocking
CC
Operating system
Architecture
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information