Ticket #4954 (closed feature request: fixed)
-eventlog / -debug should imply -rtsopts
|Reported by:||duncan||Owned by:|
|Type of failure:||None/Unknown||Difficulty:||Unknown|
|Test Case:||Blocked By:|
The -eventlog flag links the program to the threaded rts. The eventlog is only generated when using the -l RTS flag, but by default we get
$ ./foo +RTS -l Setup: Most RTS options are disabled. Link with -rtsopts to enable them.
You have to use both -eventlog and -rtsopts to be able to run with +RTS -l.
I think -eventlog should imply -rtsopts because it's pointless to use the -eventlog way if one never uses the runtime flag +RTS -l.
The -rtsopts was added as a security measure, so that by default the runtime +RTS -RTS options would not be available. Since -eventlog is a non-default option then I think it is also safe from a security POV to have it imply -rtsopts.
For the security paranoid, at most, one could consider in the userguide where -rtsopts is mentioned and the security issue pointed out, that it could also mention what other flags imply -rtsopts.
BTW, I tried making a patch for this, but the -eventlog flag is a static flag while -rtsopts is a dynamic flag and it appears hard to make one imply the other (the only case where that is done is labeled as a hack).