diff options
author | Andreas Klebinger <klebinger.andreas@gmx.at> | 2021-02-21 16:04:20 +0100 |
---|---|---|
committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2021-02-26 16:27:26 -0500 |
commit | a9f23793126251844944e00bca8e84370c759aa7 (patch) | |
tree | 29122c4a7ce6aafcc41d3b070f70697289e2db97 /rts/Exception.cmm | |
parent | 24777bb334a49f6bd6c0df2d5ddb371f98436888 (diff) | |
download | haskell-a9f23793126251844944e00bca8e84370c759aa7.tar.gz |
Move absentError into ghc-prim.
When using -fdicts-strict we generate references to absentError while
compiling ghc-prim. However we always load ghc-prim before base so this
caused linker errors.
We simply solve this by moving absentError into ghc-prim. This does mean
it's now a panic instead of an exception which can no longer be caught.
But given that it should only be thrown if there is a compiler error
that seems acceptable, and in fact we already do this for
absentSumFieldError which has similar constraints.
Diffstat (limited to 'rts/Exception.cmm')
-rw-r--r-- | rts/Exception.cmm | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/rts/Exception.cmm b/rts/Exception.cmm index 3216edbcc4..edbd657251 100644 --- a/rts/Exception.cmm +++ b/rts/Exception.cmm @@ -660,3 +660,9 @@ stg_paniczh (W_ str) { ccall barf(str) never returns; } + +// See Note [Compiler error functions] in GHC.Prim.Panic +stg_absentErrorzh (W_ str) +{ + ccall barf("Oops! Entered absent arg %s", str) never returns; +} |