summaryrefslogtreecommitdiff
path: root/testsuite/tests/driver/1372
diff options
context:
space:
mode:
Diffstat (limited to 'testsuite/tests/driver/1372')
-rw-r--r--testsuite/tests/driver/1372/1372.stderr2
-rw-r--r--testsuite/tests/driver/1372/Makefile37
-rw-r--r--testsuite/tests/driver/1372/all.T5
-rw-r--r--testsuite/tests/driver/1372/p1/A1.hs2
-rw-r--r--testsuite/tests/driver/1372/p1/A2.hs2
-rw-r--r--testsuite/tests/driver/1372/p1/Setup.hs6
-rw-r--r--testsuite/tests/driver/1372/p1/p1.cabal4
-rw-r--r--testsuite/tests/driver/1372/p2/Main.hs7
-rw-r--r--testsuite/tests/driver/1372/p2/Setup.hs6
-rw-r--r--testsuite/tests/driver/1372/p2/p2.cabal5
10 files changed, 76 insertions, 0 deletions
diff --git a/testsuite/tests/driver/1372/1372.stderr b/testsuite/tests/driver/1372/1372.stderr
new file mode 100644
index 0000000000..f06f294dae
--- /dev/null
+++ b/testsuite/tests/driver/1372/1372.stderr
@@ -0,0 +1,2 @@
+
+Main.hs:5:5: Not in scope: data constructor `T'
diff --git a/testsuite/tests/driver/1372/Makefile b/testsuite/tests/driver/1372/Makefile
new file mode 100644
index 0000000000..f55a4a407d
--- /dev/null
+++ b/testsuite/tests/driver/1372/Makefile
@@ -0,0 +1,37 @@
+TOP=../../..
+include $(TOP)/mk/boilerplate.mk
+include $(TOP)/mk/test.mk
+
+LOCAL_PKGCONF=local.package.conf
+
+clean:
+ rm -f p1/setup p1/Setup.o p1/Setup.hi
+ rm -f p2/setup p2/Setup.o p2/Setup.hi
+ rm -rf p1/dist p2/dist
+ rm -f *.o *.hi
+ rm -f clean.out prep.out
+ rm -f p1/A.hs
+ rm -f $(LOCAL_PKGCONF)
+
+1372:
+ $(MAKE) clean
+ $(MAKE) prep
+# This should recompile Main.hs, because A in package p1 has changed
+# and recompiling Main.hs will now fail.
+ -cd p2 && ./setup build -v0
+ $(MAKE) clean
+
+prep:
+ echo "[]" >$(LOCAL_PKGCONF)
+ cp p1/A1.hs p1/A.hs
+ $(MAKE) prep.p1
+ $(MAKE) prep.p2
+ cp p1/A2.hs p1/A.hs
+ cd p1 && ./setup build -v0
+
+prep.%:
+ cd $* && "$(TEST_HC)" $(TEST_HC_OPTS) -v0 --make -o setup Setup.hs
+ cd $* && ./setup configure -v0 --with-compiler="$(TEST_HC)" --with-hc-pkg="$(GHC_PKG)" --package-db=../$(LOCAL_PKGCONF)
+ cd $* && ./setup build -v0
+ cd $* && ./setup register -v0 --inplace
+
diff --git a/testsuite/tests/driver/1372/all.T b/testsuite/tests/driver/1372/all.T
new file mode 100644
index 0000000000..cabf3c01f8
--- /dev/null
+++ b/testsuite/tests/driver/1372/all.T
@@ -0,0 +1,5 @@
+test('1372',
+ clean_cmd('$MAKE -s clean'),
+ run_command,
+ ['$MAKE -s --no-print-directory 1372'])
+
diff --git a/testsuite/tests/driver/1372/p1/A1.hs b/testsuite/tests/driver/1372/p1/A1.hs
new file mode 100644
index 0000000000..6656b4bdfc
--- /dev/null
+++ b/testsuite/tests/driver/1372/p1/A1.hs
@@ -0,0 +1,2 @@
+module A where
+data T = T
diff --git a/testsuite/tests/driver/1372/p1/A2.hs b/testsuite/tests/driver/1372/p1/A2.hs
new file mode 100644
index 0000000000..aa0767c452
--- /dev/null
+++ b/testsuite/tests/driver/1372/p1/A2.hs
@@ -0,0 +1,2 @@
+module A where
+data T' = T'
diff --git a/testsuite/tests/driver/1372/p1/Setup.hs b/testsuite/tests/driver/1372/p1/Setup.hs
new file mode 100644
index 0000000000..6fa548caf7
--- /dev/null
+++ b/testsuite/tests/driver/1372/p1/Setup.hs
@@ -0,0 +1,6 @@
+module Main (main) where
+
+import Distribution.Simple
+
+main :: IO ()
+main = defaultMain
diff --git a/testsuite/tests/driver/1372/p1/p1.cabal b/testsuite/tests/driver/1372/p1/p1.cabal
new file mode 100644
index 0000000000..66d4f0ec4c
--- /dev/null
+++ b/testsuite/tests/driver/1372/p1/p1.cabal
@@ -0,0 +1,4 @@
+name: p1
+version: 1.0
+exposed-modules: A
+build-depends: base
diff --git a/testsuite/tests/driver/1372/p2/Main.hs b/testsuite/tests/driver/1372/p2/Main.hs
new file mode 100644
index 0000000000..b423120e43
--- /dev/null
+++ b/testsuite/tests/driver/1372/p2/Main.hs
@@ -0,0 +1,7 @@
+module Main where
+
+import A
+
+x = T
+
+main = print "ok"
diff --git a/testsuite/tests/driver/1372/p2/Setup.hs b/testsuite/tests/driver/1372/p2/Setup.hs
new file mode 100644
index 0000000000..6fa548caf7
--- /dev/null
+++ b/testsuite/tests/driver/1372/p2/Setup.hs
@@ -0,0 +1,6 @@
+module Main (main) where
+
+import Distribution.Simple
+
+main :: IO ()
+main = defaultMain
diff --git a/testsuite/tests/driver/1372/p2/p2.cabal b/testsuite/tests/driver/1372/p2/p2.cabal
new file mode 100644
index 0000000000..903515e80c
--- /dev/null
+++ b/testsuite/tests/driver/1372/p2/p2.cabal
@@ -0,0 +1,5 @@
+name: p2
+version: 1.0
+executable: 1372
+build-depends: base, p1
+main-is: Main.hs