On 24/11/2015 07:37, Levent Erkok wrote:
I'm working on a plugin, and would like to be able to tell if it's GHC
or GHCi that's running.

I tried:

    df   <- getDynFlags
    let isGHCi = ghcMode df == CompManager

Alas, while that correctly tells apart "ghci" from "ghc -c", it also
returns True when ghc is called without the "-c" argument.

Is there a better/more robust way of figuring out whether we're in an
interactive session?

The best way is to check whether hscTarget df == HscInterpreted, and you can also check whether ghcLink df == LinkInMemory.

Checking for the `--interactive` flag only works for the standalone GHCi, and not users of the GHC API.

Cheers,
Simon
_______________________________________________
ghc-devs mailing list
ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs

Reply via email to