diff options
Diffstat (limited to 'rts')
-rw-r--r-- | rts/Schedule.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/rts/Schedule.c b/rts/Schedule.c index 72b7217ebb..ce10852adb 100644 --- a/rts/Schedule.c +++ b/rts/Schedule.c @@ -1924,9 +1924,15 @@ void setNumCapabilities (nat new_n_capabilities USED_IF_THREADS) { #if !defined(THREADED_RTS) - - barf("setNumCapabilities: not supported in the non-threaded RTS"); - + if (new_n_capabilities != 1) { + errorBelch("setNumCapabilities: not supported in the non-threaded RTS"); + } + return; +#elif defined(NOSMP) + if (new_n_capabilities != 1) { + errorBelch("setNumCapabilities: not supported on this platform"); + } + return; #else Task *task; Capability *cap; |