Skip to content

Assertion failure with cyclic import (2)

Given four files

A.hs

module A where

A.hs-boot

module A where

import B

B.hs

module B where

import {-# SOURCE #-} A

B.hs-boot

module B where

we get

./stage1/bin/ghc A
ghc: panic! (the 'impossible' happened)
  GHC version 9.9.20231214:
	ASSERT failed!
  Build plan missing nodes:
  PLAN: 3
  GRAPH: 4
  Call stack:
      CallStack (from HasCallStack):
        assertPpr, called at compiler/GHC/Driver/Make.hs:669:5 in ghc-9.9-inplace:GHC.Driver.Make
  CallStack (from HasCallStack):
    panic, called at compiler/GHC/Utils/Error.hs:511:29 in ghc-9.9-inplace:GHC.Utils.Error

This is after #24196 (closed) was fixed. It is the same reproducer except that I added B.hs-boot.

Edited by Krzysztof Gogolewski
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information