Skip to content

Bytecode interpreter: ASSERT failed - conflation of isUnliftedType == Addr#

<no location info>: error:
    ASSERT failed!
  CallStack (from HasCallStack):
    massert, called at compiler/GHC/StgToByteCode.hs:1802:15 in ghc:GHC.StgToByteCode

The UnlGadt1 test

{-# LANGUAGE UnliftedDatatypes #-}
{-# LANGUAGE GADTs #-}
{-# LANGUAGE KindSignatures #-}

import GHC.Exts
import GHC.Types

data T a :: UnliftedType where
  TInt :: T Int

f :: T a -> Int
f _ = 0

g :: T a -> T a
g TInt = TInt
{-# NOINLINE g #-}

main = do
  case g TInt of TInt -> putStrLn "should see this"
  print (f (error "boom")) -- crashes!
"/home/matt/ghc-9.6-backports/_debug_clean/stage1/bin/ghc" UnlGadt1.hs -dcore-lint -dstg-lint -dcmm-lint   --interactive
Edited by sheaf
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information