summaryrefslogtreecommitdiff
path: root/tests/subsig.ur
diff options
context:
space:
mode:
Diffstat (limited to 'tests/subsig.ur')
-rw-r--r--tests/subsig.ur43
1 files changed, 43 insertions, 0 deletions
diff --git a/tests/subsig.ur b/tests/subsig.ur
new file mode 100644
index 00000000..c10fb3ba
--- /dev/null
+++ b/tests/subsig.ur
@@ -0,0 +1,43 @@
+structure M = struct
+ signature S = sig
+ type t
+ end
+end
+
+structure N : M.S = struct
+ type t = int
+end
+
+structure M' = struct
+ type t = int
+ val y = 42
+
+ signature S = sig
+ val x : t
+ end
+end
+
+structure N' : M'.S = struct
+ val x = 0
+end
+
+signature S = sig
+ type t
+ val y : t
+
+ signature S = sig
+ val x : t
+ end
+end
+
+structure M'S : S = M'
+
+structure V : M'S.S = struct
+ val x = M'S.y
+end
+
+structure M'S' = M'S
+
+structure V : M'S'.S = struct
+ val x = M'S.y
+end