diff options
author | Javran Cheng <Javran.c@gmail.com> | 2015-05-06 07:47:20 -0500 |
---|---|---|
committer | Austin Seipp <austin@well-typed.com> | 2015-05-06 07:50:49 -0500 |
commit | 477f514f6ebcf783810da93e2191e4b6ea65559b (patch) | |
tree | 937142e105718d77b9a7c404cd538e3dd9e78f55 /rts/hooks/StackOverflow.c | |
parent | 03c4893e355948fe865bc52c744359c42e4b06d7 (diff) | |
download | haskell-477f514f6ebcf783810da93e2191e4b6ea65559b.tar.gz |
rts: add "-no-rtsopts-suggestions" option
Depends on D767
Setting this flag prevents RTS from giving RTS suggestions like "Use
`+RTS -Ksize -RTS' to increase it."
According to the comment @rwbarton made in #9579, sometimes "+RTS"
suggestions don't make sense (e.g. when the program is precompiled and
installed through package managers), we can encourage people to
distribute binaries with either "-no-rtsopts-suggestions" or "-rtsopts".
Reviewed By: erikd, austin
Differential Revision: https://phabricator.haskell.org/D809
GHC Trac Issues: #9579
Diffstat (limited to 'rts/hooks/StackOverflow.c')
-rw-r--r-- | rts/hooks/StackOverflow.c | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/rts/hooks/StackOverflow.c b/rts/hooks/StackOverflow.c index 1ae8603eec..602700ad77 100644 --- a/rts/hooks/StackOverflow.c +++ b/rts/hooks/StackOverflow.c @@ -14,12 +14,15 @@ void StackOverflowHook (W_ stack_size) /* in bytes */ { - fprintf(stderr, - "Stack space overflow: current size %" FMT_Word " bytes.\n" - "%s `+RTS -Ksize -RTS' to increase it.\n", - stack_size, - ((rtsConfig.rts_opts_enabled == RtsOptsAll) - ? "Use" - : "Relink with -rtsopts and use") - ); + errorBelch("Stack space overflow: current size %" FMT_Word " bytes.", + stack_size); + + if (rtsConfig.rts_opts_suggestions == rtsTrue) { + if (rtsConfig.rts_opts_enabled == RtsOptsAll) { + errorBelch("Use `+RTS -Ksize -RTS' to increase it."); + } else { + errorBelch("Relink with -rtsopts and " + "use `+RTS -Ksize -RTS' to increase it."); + } + } } |