From 70fea39e2bacef646f442cd88c32fcb5f1212725 Mon Sep 17 00:00:00 2001 From: krasimir Date: Mon, 14 Sep 2009 12:17:57 +0000 Subject: [PATCH] added some tests in the testsuite for the compiler --- testsuite/compiler/check/lins/lins.gfs.gold | 6 ++---- testsuite/compiler/check/oper-definition/Res.gf | 5 +++++ testsuite/compiler/check/oper-definition/test.gfs | 1 + testsuite/compiler/check/oper-definition/test.gfs.gold | 5 +++++ testsuite/compiler/check/restricted-inheritance/A.gf | 8 ++++++++ testsuite/compiler/check/restricted-inheritance/B.gf | 3 +++ testsuite/compiler/typecheck/abstract/A.gf | 6 ++++++ testsuite/compiler/typecheck/abstract/B.gf | 7 +++++++ testsuite/compiler/typecheck/abstract/C.gf | 8 ++++++++ testsuite/compiler/typecheck/abstract/test_A.gfs | 1 + testsuite/compiler/typecheck/abstract/test_A.gfs.gold | 5 +++++ testsuite/compiler/typecheck/abstract/test_B.gfs | 1 + testsuite/compiler/typecheck/abstract/test_B.gfs.gold | 5 +++++ testsuite/compiler/typecheck/abstract/test_C.gfs | 1 + testsuite/compiler/typecheck/abstract/test_C.gfs.gold | 5 +++++ testsuite/compiler/typecheck/concrete/A.gf | 7 +++++++ testsuite/compiler/typecheck/concrete/test_A.gfs | 1 + testsuite/compiler/typecheck/concrete/test_A.gfs.gold | 5 +++++ 18 files changed, 76 insertions(+), 4 deletions(-) create mode 100644 testsuite/compiler/check/oper-definition/Res.gf create mode 100644 testsuite/compiler/check/oper-definition/test.gfs create mode 100644 testsuite/compiler/check/oper-definition/test.gfs.gold create mode 100644 testsuite/compiler/check/restricted-inheritance/A.gf create mode 100644 testsuite/compiler/check/restricted-inheritance/B.gf create mode 100644 testsuite/compiler/typecheck/abstract/A.gf create mode 100644 testsuite/compiler/typecheck/abstract/B.gf create mode 100644 testsuite/compiler/typecheck/abstract/C.gf create mode 100644 testsuite/compiler/typecheck/abstract/test_A.gfs create mode 100644 testsuite/compiler/typecheck/abstract/test_A.gfs.gold create mode 100644 testsuite/compiler/typecheck/abstract/test_B.gfs create mode 100644 testsuite/compiler/typecheck/abstract/test_B.gfs.gold create mode 100644 testsuite/compiler/typecheck/abstract/test_C.gfs create mode 100644 testsuite/compiler/typecheck/abstract/test_C.gfs.gold create mode 100644 testsuite/compiler/typecheck/concrete/A.gf create mode 100644 testsuite/compiler/typecheck/concrete/test_A.gfs create mode 100644 testsuite/compiler/typecheck/concrete/test_A.gfs.gold diff --git a/testsuite/compiler/check/lins/lins.gfs.gold b/testsuite/compiler/check/lins/lins.gfs.gold index 7bcdd3932..bc3f9ebb0 100644 --- a/testsuite/compiler/check/lins/lins.gfs.gold +++ b/testsuite/compiler/check/lins/lins.gfs.gold @@ -1,8 +1,6 @@ checking module linsCnc -Warning: no linearization type for C, inserting default {s : Str} -checking module linsCnc -Warning: no linearization of test - + Warning: no linearization type for C, inserting default {s : Str} + Warning: no linearization of test language linsCnc productions C1 -> F0[] diff --git a/testsuite/compiler/check/oper-definition/Res.gf b/testsuite/compiler/check/oper-definition/Res.gf new file mode 100644 index 000000000..c22cb33cd --- /dev/null +++ b/testsuite/compiler/check/oper-definition/Res.gf @@ -0,0 +1,5 @@ +resource Res = { + +oper my_oper : Str -> Str ; + +} \ No newline at end of file diff --git a/testsuite/compiler/check/oper-definition/test.gfs b/testsuite/compiler/check/oper-definition/test.gfs new file mode 100644 index 000000000..19dbc0a16 --- /dev/null +++ b/testsuite/compiler/check/oper-definition/test.gfs @@ -0,0 +1 @@ +i testsuite/compiler/check/oper-definition/Res.gf \ No newline at end of file diff --git a/testsuite/compiler/check/oper-definition/test.gfs.gold b/testsuite/compiler/check/oper-definition/test.gfs.gold new file mode 100644 index 000000000..1a7b407f2 --- /dev/null +++ b/testsuite/compiler/check/oper-definition/test.gfs.gold @@ -0,0 +1,5 @@ + + +checking module Res + Happened in operation my_oper in Res.gf, line 3 : + No definition given to the operation diff --git a/testsuite/compiler/check/restricted-inheritance/A.gf b/testsuite/compiler/check/restricted-inheritance/A.gf new file mode 100644 index 000000000..4e8e7780b --- /dev/null +++ b/testsuite/compiler/check/restricted-inheritance/A.gf @@ -0,0 +1,8 @@ +abstract A = { + +cat A1; A2 ; +fun f1 : A1 ; + f2 : A1 ; + g : A2 ; + +} \ No newline at end of file diff --git a/testsuite/compiler/check/restricted-inheritance/B.gf b/testsuite/compiler/check/restricted-inheritance/B.gf new file mode 100644 index 000000000..bc1f76d84 --- /dev/null +++ b/testsuite/compiler/check/restricted-inheritance/B.gf @@ -0,0 +1,3 @@ +abstract B = A - [A1] ** { + +} \ No newline at end of file diff --git a/testsuite/compiler/typecheck/abstract/A.gf b/testsuite/compiler/typecheck/abstract/A.gf new file mode 100644 index 000000000..2c318dec1 --- /dev/null +++ b/testsuite/compiler/typecheck/abstract/A.gf @@ -0,0 +1,6 @@ +abstract A = { + +cat A ; + B (A 1) ; + +} \ No newline at end of file diff --git a/testsuite/compiler/typecheck/abstract/B.gf b/testsuite/compiler/typecheck/abstract/B.gf new file mode 100644 index 000000000..7a44431ce --- /dev/null +++ b/testsuite/compiler/typecheck/abstract/B.gf @@ -0,0 +1,7 @@ +abstract B = { + +cat S ; + +fun f : S -> S 1 ; + +} \ No newline at end of file diff --git a/testsuite/compiler/typecheck/abstract/C.gf b/testsuite/compiler/typecheck/abstract/C.gf new file mode 100644 index 000000000..78b499619 --- /dev/null +++ b/testsuite/compiler/typecheck/abstract/C.gf @@ -0,0 +1,8 @@ +abstract C = { + +cat S ; + +fun f : S -> S ; +def f x = 1 ; + +} \ No newline at end of file diff --git a/testsuite/compiler/typecheck/abstract/test_A.gfs b/testsuite/compiler/typecheck/abstract/test_A.gfs new file mode 100644 index 000000000..e4a425917 --- /dev/null +++ b/testsuite/compiler/typecheck/abstract/test_A.gfs @@ -0,0 +1 @@ +i testsuite/compiler/typecheck/abstract/A.gf \ No newline at end of file diff --git a/testsuite/compiler/typecheck/abstract/test_A.gfs.gold b/testsuite/compiler/typecheck/abstract/test_A.gfs.gold new file mode 100644 index 000000000..b4c49cd03 --- /dev/null +++ b/testsuite/compiler/typecheck/abstract/test_A.gfs.gold @@ -0,0 +1,5 @@ + + +checking module A + Prod expected for function % A. A instead of Type + in category B in A.gf, line 4 diff --git a/testsuite/compiler/typecheck/abstract/test_B.gfs b/testsuite/compiler/typecheck/abstract/test_B.gfs new file mode 100644 index 000000000..d82aa3ba2 --- /dev/null +++ b/testsuite/compiler/typecheck/abstract/test_B.gfs @@ -0,0 +1 @@ +i testsuite/compiler/typecheck/abstract/B.gf \ No newline at end of file diff --git a/testsuite/compiler/typecheck/abstract/test_B.gfs.gold b/testsuite/compiler/typecheck/abstract/test_B.gfs.gold new file mode 100644 index 000000000..c27ca89d2 --- /dev/null +++ b/testsuite/compiler/typecheck/abstract/test_B.gfs.gold @@ -0,0 +1,5 @@ + + +checking module B + Prod expected for function % B. S instead of Type + in type of function f in B.gf, line 5 diff --git a/testsuite/compiler/typecheck/abstract/test_C.gfs b/testsuite/compiler/typecheck/abstract/test_C.gfs new file mode 100644 index 000000000..f7cb5c538 --- /dev/null +++ b/testsuite/compiler/typecheck/abstract/test_C.gfs @@ -0,0 +1 @@ +i testsuite/compiler/typecheck/abstract/C.gf \ No newline at end of file diff --git a/testsuite/compiler/typecheck/abstract/test_C.gfs.gold b/testsuite/compiler/typecheck/abstract/test_C.gfs.gold new file mode 100644 index 000000000..c5e50021d --- /dev/null +++ b/testsuite/compiler/typecheck/abstract/test_C.gfs.gold @@ -0,0 +1,5 @@ + + +checking module C + {Int<>S} + in definition of function f in C.gf, line 6 diff --git a/testsuite/compiler/typecheck/concrete/A.gf b/testsuite/compiler/typecheck/concrete/A.gf new file mode 100644 index 000000000..10bcb3a32 --- /dev/null +++ b/testsuite/compiler/typecheck/concrete/A.gf @@ -0,0 +1,7 @@ +resource A = { + +oper a_Det : Str = "a" ; + + silly : Str = a_Det "X" ; + +} \ No newline at end of file diff --git a/testsuite/compiler/typecheck/concrete/test_A.gfs b/testsuite/compiler/typecheck/concrete/test_A.gfs new file mode 100644 index 000000000..5865b606d --- /dev/null +++ b/testsuite/compiler/typecheck/concrete/test_A.gfs @@ -0,0 +1 @@ +i testsuite/compiler/typecheck/concrete/A.gf \ No newline at end of file diff --git a/testsuite/compiler/typecheck/concrete/test_A.gfs.gold b/testsuite/compiler/typecheck/concrete/test_A.gfs.gold new file mode 100644 index 000000000..8ab581f09 --- /dev/null +++ b/testsuite/compiler/typecheck/concrete/test_A.gfs.gold @@ -0,0 +1,5 @@ + + +checking module A + Happened in operation silly in A.gf, line 5 : + A function type is expected for a_Det instead of type Str