summaryrefslogtreecommitdiff
path: root/src/runtime
diff options
context:
space:
mode:
authorhallgren <hallgren@chalmers.se>2014-02-07 13:57:13 +0000
committerhallgren <hallgren@chalmers.se>2014-02-07 13:57:13 +0000
commit9a422839cc8bf6090fa35042ddd18e9372d854c0 (patch)
tree37229c0e35376ec84de0037b64927c2eb6fe1083 /src/runtime
parent957dfb83b6f7ee0835d32b5930d47b133e678592 (diff)
pgf-shell: enable -rtsopts, call performGC between commands
This is to make it easier to find the cause of space leaks.
Diffstat (limited to 'src/runtime')
-rw-r--r--src/runtime/haskell-bind/examples/pgf-shell.hs4
-rw-r--r--src/runtime/haskell-bind/haskell-bind.cabal2
2 files changed, 5 insertions, 1 deletions
diff --git a/src/runtime/haskell-bind/examples/pgf-shell.hs b/src/runtime/haskell-bind/examples/pgf-shell.hs
index 04b6522da..224c16512 100644
--- a/src/runtime/haskell-bind/examples/pgf-shell.hs
+++ b/src/runtime/haskell-bind/examples/pgf-shell.hs
@@ -14,6 +14,7 @@ import System.IO.Error(catchIOError)
import System.Environment
import CRuntimeFFI
import CId
+import System.Mem(performGC)
main = getPGF =<< getArgs
@@ -21,7 +22,8 @@ getPGF [path] = pgfShell =<< readPGF path
getPGF _ = putStrLn "Usage: pgf-shell <path to pgf>"
pgfShell pgf =
- forever $ do putStr "> "; hFlush stdout
+ forever $ do performGC
+ putStr "> "; hFlush stdout
execute pgf =<< readLn
execute pgf cmd =
diff --git a/src/runtime/haskell-bind/haskell-bind.cabal b/src/runtime/haskell-bind/haskell-bind.cabal
index 8f8f62321..31f2a75d2 100644
--- a/src/runtime/haskell-bind/haskell-bind.cabal
+++ b/src/runtime/haskell-bind/haskell-bind.cabal
@@ -31,3 +31,5 @@ executable pgf-shell
hs-source-dirs: examples
build-depends: base, haskell-bind
default-language: Haskell2010
+ if impl(ghc>=7.0)
+ ghc-options: -rtsopts