Hadrian GHC build fails with Not in scope: 'IntMul2Op'
Summary
I just updated my ghc repository from 4cbd5b47 to 7a51b587, and now hadrian/build.sh -j
gives the following error:
compiler/GHC/StgToCmm/Prim.hs:1430:3: error:
Not in scope: data constructor ‘IntMul2Op’
Perhaps you meant one of these:
‘IntMulOp’ (imported from PrimOp),
‘Int8MulOp’ (imported from PrimOp)
|
1430 | IntMul2Op -> \_ -> OpDest_CallishHandledLater $
| ^^^^^^^^^
I've attached the full output from Hadrian here: output
Maybe Hadrian is not rebuilding something which it should be rebuilding? After running hadrian/build.sh -j
, the file `build/stage0/compiler/build/primop-data-decl.hs-incl' includes
...
| IntMulOp
| IntMul2Op
| IntMulMayOfloOp
...
but the file `build/stage1/compiler/build/primop-data-decl.hs-incl' includes only
...
| IntMulOp
| IntMulMayOfloOp
...
Otherwise, the files are identical.
Steps to reproduce
From a fresh Ubuntu 19.10 install:
sudo apt update && sudo apt upgrade
sudo apt install build-essential curl libgmp-dev libffi-dev libncurses-dev autoconf
curl https://get-ghcup.haskell.org -sSf | BOOTSTRAP_HASKELL_NONINTERACTIVE=1 sh
source ~/.ghcup/env
ghcup install 8.8.1
ghcup set 8.8.1
git clone https://gitlab.haskell.org/ghc/ghc.git --recurse-submodules
git reset --hard 4cbd5b47
hadrian/build.sh -j --configure
git fetch origin master --recurse-submodules
git merge 7a51b587
hadrian/build.sh -j --configure
Just pulling 7a51b587 and building with Hadrian does not raise an error.
Environment
- GHC version used:
8.8.1
- Operating System:
Ubuntu 19.10
- System Architecture:
Linux t480 5.3.0-24-generic #26-Ubuntu SMP Thu Nov 14 01:33:18 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux