summaryrefslogtreecommitdiff
path: root/testsuite/tests/ghci/prog002/prog002.script
blob: 02d9362ca5a003273edc25f23f7c4a5424525b50 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
:unset +s
:unset +t

:l ../shell.hs
:def shell (\s -> do shell s; return "")

-- first, clean up:
:shell rm -f *.hi *.o *~
:shell cp A1.hs A.hs

:load D.hs

-- compile A & reload
:shell "$HC" $HC_OPTS $ghciWayFlags -fforce-recomp -c A.hs
:reload

B.g 42
B.g 42
B.g 42

-- swap A2 for A, compile & reload
:shell sleep 1
:shell cp A2.hs A.hs
:shell "$HC" $HC_OPTS $ghciWayFlags -fforce-recomp -c A.hs
:reload
-- the system should ignore the compiled version and compile its own.

B.g 42
B.g 42
B.g 42

-- pick up newly compiled A
:load D.hs

B.g 42
B.g 42
B.g 42

-- remove A.o: system should recompile A
:shell rm A.o
:reload

B.g 42
B.g 42
B.g 42