diff tests/functorMadness.ur @ 1989:210fb3dfc483

Some more nested functor bug-fixing, including generating fresh internal names at applications; still need to debug issues with datatype constructors
author Adam Chlipala <adam@chlipala.net>
date Thu, 20 Feb 2014 10:27:15 -0500
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/functorMadness.ur	Thu Feb 20 10:27:15 2014 -0500
@@ -0,0 +1,18 @@
+functor F(M : sig end) = struct
+    fun f () = f ()
+
+    functor G(M : sig end) = struct
+        fun g () = f ()
+    end
+end
+
+structure M1 = F(struct end)
+structure M2 = F(struct end)
+
+structure N1 = M1.G(struct end)
+structure N2 = M2.G(struct end)
+
+fun main () : transaction page =
+    return (N1.g ());
+    return (N2.g ());
+    return <xml/>