diff options
Diffstat (limited to 'rts/RtsStartup.c')
-rw-r--r-- | rts/RtsStartup.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/rts/RtsStartup.c b/rts/RtsStartup.c index 27002ca81b..491d745668 100644 --- a/rts/RtsStartup.c +++ b/rts/RtsStartup.c @@ -214,6 +214,16 @@ static void initBuiltinGcRoots(void) #else getStablePtr((StgPtr)processRemoteCompletion_closure); #endif + + /* + * See Note [Wired-in exceptions are not CAFfy] in GHC.Core.Make. + * These are precisely the functions for which we construct `Id`s using + * GHC.Core.Make.mkExceptionId. + */ + getStablePtr((StgPtr)absentSumFieldError_closure); + getStablePtr((StgPtr)raiseUnderflowException_closure); + getStablePtr((StgPtr)raiseOverflowException_closure); + getStablePtr((StgPtr)raiseDivZeroException_closure); } void |