summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--testsuite/tests/rename/should_compile/T5306.hs5
-rw-r--r--testsuite/tests/rename/should_compile/T5306a.hs5
-rw-r--r--testsuite/tests/rename/should_compile/T5306b.hs5
-rw-r--r--testsuite/tests/rename/should_compile/all.T6
4 files changed, 21 insertions, 0 deletions
diff --git a/testsuite/tests/rename/should_compile/T5306.hs b/testsuite/tests/rename/should_compile/T5306.hs
new file mode 100644
index 0000000000..641176b758
--- /dev/null
+++ b/testsuite/tests/rename/should_compile/T5306.hs
@@ -0,0 +1,5 @@
+{-# LANGUAGE TypeFamilies #-}
+module T5306 where
+
+import T5306b(F(FInt)) -- succeeds
+import T5306a(F(FBool)) -- failed (before fix)
diff --git a/testsuite/tests/rename/should_compile/T5306a.hs b/testsuite/tests/rename/should_compile/T5306a.hs
new file mode 100644
index 0000000000..4aee0f8340
--- /dev/null
+++ b/testsuite/tests/rename/should_compile/T5306a.hs
@@ -0,0 +1,5 @@
+{-# LANGUAGE TypeFamilies #-}
+module T5306a where
+import T5306b
+
+data instance F Bool = FBool
diff --git a/testsuite/tests/rename/should_compile/T5306b.hs b/testsuite/tests/rename/should_compile/T5306b.hs
new file mode 100644
index 0000000000..4801b79db7
--- /dev/null
+++ b/testsuite/tests/rename/should_compile/T5306b.hs
@@ -0,0 +1,5 @@
+{-# LANGUAGE TypeFamilies #-}
+module T5306b where
+
+data family F a
+data instance F Int = FInt
diff --git a/testsuite/tests/rename/should_compile/all.T b/testsuite/tests/rename/should_compile/all.T
index 3946987e37..3786a5b993 100644
--- a/testsuite/tests/rename/should_compile/all.T
+++ b/testsuite/tests/rename/should_compile/all.T
@@ -177,3 +177,9 @@ test('T2436',
['T2436', '-v0'])
test('T5331', normal, compile, ['']) # Unused tyvar warnings
test('T5334', normal, compile, ['']) # Unused tyvar warnings
+test('T5306',
+ [only_compiler_types(['ghc']),
+ extra_clean(['T5306a.hi', 'T5306a.o',
+ 'T5306b.hi', 'T5306b.o'])],
+ multimod_compile,
+ ['T5306', '-v0'])