diff options
Diffstat (limited to 'testsuite/tests/ghci/prog001/prog001.script')
-rw-r--r-- | testsuite/tests/ghci/prog001/prog001.script | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/testsuite/tests/ghci/prog001/prog001.script b/testsuite/tests/ghci/prog001/prog001.script new file mode 100644 index 0000000000..77fb21b9bb --- /dev/null +++ b/testsuite/tests/ghci/prog001/prog001.script @@ -0,0 +1,40 @@ +:unset +s + +:l ../shell.hs +:def shell (\s -> do shell s; return "") + +-- first, tidy up: +:shell rm -f *.hi *.o *~ +:shell cp D1.hs D.hs + +-- load the program (all interpreted) +:load A.hs + +-- reloading should do nothing +:reload + +-- make sure `main' works +main + +-- touch a module + recompile +:shell sleep 1 +:shell touch C.hs +:reload + +-- make sure `main' still works +main + +-- compile D & reload +:shell "$HC" $HC_OPTS -fforce-recomp -c D.hs +:reload +main + +-- change D, recompile & reload +:shell cp D2.hs D.hs +:shell "$HC" $HC_OPTS -fforce-recomp -c D.hs +:reload +:load A.hs + +-- make sure we're picking up the new D, via B +:module B +g 42 |