Skip to content

cabal run +RTS ... is confusing #8641

Closed
@noughtmare

Description

@noughtmare

I've seen multiple reports of issues that were caused by people writing cabal run +RTS ... with the intention of passing those RTS options to the program that they run. Instead cabal itself consumes those RTS options.

Recently, this came up again on reddit.

The obvious solution is that users can just run cabal run -- +RTS .... However, I think this is such a common mistake that it might warrant a custom warning. Would it be possible to show something like the following warning?

$ cabal run +RTS -N
Warning: Your RTS options are applied to cabal itself, not the executable.
         Use 'cabal run -- +RTS -N' to pass the RTS options to your executable.

There are also stackoverflow questions caused by this confusion:

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions