From eeb08bbd4d6d6545dfdefd3a35877e0e0117c514 Mon Sep 17 00:00:00 2001 From: krasimir Date: Thu, 18 Jun 2009 17:47:06 +0000 Subject: [PATCH] added testcase for linearization with HOAS --- testsuite/runtime/linearize/Test.gf | 9 +++++++++ testsuite/runtime/linearize/TestCnc.gf | 7 +++++++ testsuite/runtime/linearize/linearize.gfs | 3 +++ testsuite/runtime/linearize/linearize.gfs.gold | 3 +++ 4 files changed, 22 insertions(+) create mode 100644 testsuite/runtime/linearize/Test.gf create mode 100644 testsuite/runtime/linearize/TestCnc.gf create mode 100644 testsuite/runtime/linearize/linearize.gfs create mode 100644 testsuite/runtime/linearize/linearize.gfs.gold diff --git a/testsuite/runtime/linearize/Test.gf b/testsuite/runtime/linearize/Test.gf new file mode 100644 index 000000000..2b7459806 --- /dev/null +++ b/testsuite/runtime/linearize/Test.gf @@ -0,0 +1,9 @@ +abstract Test = { + +cat P ; +cat E ; + +fun Exist : (E -> P) -> P ; + Even : E -> P ; + +} \ No newline at end of file diff --git a/testsuite/runtime/linearize/TestCnc.gf b/testsuite/runtime/linearize/TestCnc.gf new file mode 100644 index 000000000..17de23793 --- /dev/null +++ b/testsuite/runtime/linearize/TestCnc.gf @@ -0,0 +1,7 @@ +concrete TestCnc of Test = { + +lincat E,P = {s:Str} ; + +lin Exist f = {s = "exists" ++ f.$0 ++ "such that" ++ f.s}; +lin Even x = {s = x.s ++ "is even"}; +} \ No newline at end of file diff --git a/testsuite/runtime/linearize/linearize.gfs b/testsuite/runtime/linearize/linearize.gfs new file mode 100644 index 000000000..72af2c126 --- /dev/null +++ b/testsuite/runtime/linearize/linearize.gfs @@ -0,0 +1,3 @@ +i testsuite/runtime/linearize/TestCnc.gf + +l Exist (\x -> Even x) diff --git a/testsuite/runtime/linearize/linearize.gfs.gold b/testsuite/runtime/linearize/linearize.gfs.gold new file mode 100644 index 000000000..22477a5ba --- /dev/null +++ b/testsuite/runtime/linearize/linearize.gfs.gold @@ -0,0 +1,3 @@ +exists x such that x is even + +