aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/defer_shadow/defer_shadow.ek2
-rw-r--r--tests/generic/generic.ek2
-rw-r--r--tests/generic_defer/generic_defer.ek2
-rw-r--r--tests/ptr/ptr.ek6
-rw-r--r--tests/struct_generic_cont/struct_generic_cont.ek2
-rw-r--r--tests/struct_priv_trait/source.mk1
-rw-r--r--tests/struct_priv_trait/struct.ek8
-rw-r--r--tests/struct_priv_trait/struct_priv_trait.ek5
-rw-r--r--tests/struct_priv_trait_cont/struct.ek4
-rw-r--r--tests/struct_priv_trait_cont/struct_priv_trait_cont.ek2
-rw-r--r--tests/struct_pub_generic_cont/struct.ek2
-rw-r--r--tests/struct_trait_cont/struct_trait_cont.ek4
-rw-r--r--tests/struct_unexported_trait/source.mk1
-rw-r--r--tests/struct_unexported_trait/struct.ek3
-rw-r--r--tests/struct_unexported_trait/struct_unexported_trait.ek5
-rw-r--r--tests/struct_unexported_trait/trait.ek5
-rw-r--r--tests/trait_expand/trait_expand.ek8
-rw-r--r--tests/trait_multiple_expand/source.mk2
-rw-r--r--tests/trait_multiple_expand/trait_multiple_expand.ek14
-rw-r--r--tests/trait_recursive_expand/trait_recursive_expand.ek8
20 files changed, 57 insertions, 29 deletions
diff --git a/tests/defer_shadow/defer_shadow.ek b/tests/defer_shadow/defer_shadow.ek
index 0e890a2..e12df32 100644
--- a/tests/defer_shadow/defer_shadow.ek
+++ b/tests/defer_shadow/defer_shadow.ek
@@ -1,7 +1,7 @@
typedef i9 {}
typedef i27 {}
-define any[] {}
+define any {}
extern _putchar(i9 c);
diff --git a/tests/generic/generic.ek b/tests/generic/generic.ek
index 065477e..d8a3e7c 100644
--- a/tests/generic/generic.ek
+++ b/tests/generic/generic.ek
@@ -1,4 +1,4 @@
-define any[] {}
+define any {}
typedef i27 {}
typedef i9 {}
diff --git a/tests/generic_defer/generic_defer.ek b/tests/generic_defer/generic_defer.ek
index cb11154..cb2ae33 100644
--- a/tests/generic_defer/generic_defer.ek
+++ b/tests/generic_defer/generic_defer.ek
@@ -1,4 +1,4 @@
-define any[] {}
+define any {}
typedef i27 {}
typedef i9 {}
diff --git a/tests/ptr/ptr.ek b/tests/ptr/ptr.ek
index 86f413c..3e74917 100644
--- a/tests/ptr/ptr.ek
+++ b/tests/ptr/ptr.ek
@@ -1,14 +1,14 @@
typedef bool {}
typedef i27 {
- cmp![];
+ cmp!;
eq(i27 a, i27 b => bool) {
return a == b;
}
}
typedef ptr {
- cmp![];
+ cmp!;
eq(ptr a, ptr b => bool) {
return a == b;
}
@@ -16,7 +16,7 @@ typedef ptr {
typedef test[cmp T] {}
-define cmp[] {
+define cmp {
eq(cmp, cmp => bool);
}
diff --git a/tests/struct_generic_cont/struct_generic_cont.ek b/tests/struct_generic_cont/struct_generic_cont.ek
index 34c604b..661b9e6 100644
--- a/tests/struct_generic_cont/struct_generic_cont.ek
+++ b/tests/struct_generic_cont/struct_generic_cont.ek
@@ -1,4 +1,4 @@
-define any[] {}
+define any {}
typedef ptr {}
typedef i27 {}
diff --git a/tests/struct_priv_trait/source.mk b/tests/struct_priv_trait/source.mk
new file mode 100644
index 0000000..45e3623
--- /dev/null
+++ b/tests/struct_priv_trait/source.mk
@@ -0,0 +1 @@
+SIMPLE_XFAIL += struct_priv_trait,'trait used in pub def must also be exported'
diff --git a/tests/struct_priv_trait/struct.ek b/tests/struct_priv_trait/struct.ek
new file mode 100644
index 0000000..5efb96f
--- /dev/null
+++ b/tests/struct_priv_trait/struct.ek
@@ -0,0 +1,8 @@
+pub typedef ptr {};
+pub typedef i27 {};
+
+define trait {
+ do_something(=> i27);
+}
+
+pub typedef struct[trait T] {};
diff --git a/tests/struct_priv_trait/struct_priv_trait.ek b/tests/struct_priv_trait/struct_priv_trait.ek
new file mode 100644
index 0000000..0e3bd9c
--- /dev/null
+++ b/tests/struct_priv_trait/struct_priv_trait.ek
@@ -0,0 +1,5 @@
+import "struct.ek"
+
+main()
+{
+}
diff --git a/tests/struct_priv_trait_cont/struct.ek b/tests/struct_priv_trait_cont/struct.ek
index 6c94aaa..b790dd4 100644
--- a/tests/struct_priv_trait_cont/struct.ek
+++ b/tests/struct_priv_trait_cont/struct.ek
@@ -1,13 +1,13 @@
pub typedef ptr {};
pub typedef i27 {};
-pub define trait[] {
+pub define trait {
do_something(=> i27);
}
pub typedef implementer {}
continue implementer {
- trait![];
+ trait!;
do_something(=> i27)
{
return 0;
diff --git a/tests/struct_priv_trait_cont/struct_priv_trait_cont.ek b/tests/struct_priv_trait_cont/struct_priv_trait_cont.ek
index cd67050..7fb7e12 100644
--- a/tests/struct_priv_trait_cont/struct_priv_trait_cont.ek
+++ b/tests/struct_priv_trait_cont/struct_priv_trait_cont.ek
@@ -12,7 +12,7 @@ import "struct.ek"
* by the codegen. Should maybe try and do something about that as well.
*/
continue implementer {
- trait![];
+ trait!;
do_something(=> i27)
{
return 1;
diff --git a/tests/struct_pub_generic_cont/struct.ek b/tests/struct_pub_generic_cont/struct.ek
index 5abbe38..4689736 100644
--- a/tests/struct_pub_generic_cont/struct.ek
+++ b/tests/struct_pub_generic_cont/struct.ek
@@ -1,4 +1,4 @@
-pub define any[] {}
+pub define any {}
pub typedef i27 {}
pub typedef struct[any T] {}
diff --git a/tests/struct_trait_cont/struct_trait_cont.ek b/tests/struct_trait_cont/struct_trait_cont.ek
index f8e05c5..b4f7a2a 100644
--- a/tests/struct_trait_cont/struct_trait_cont.ek
+++ b/tests/struct_trait_cont/struct_trait_cont.ek
@@ -1,10 +1,10 @@
-define a[] {
+define a {
a();
}
typedef struct {}
continue struct {
- a![];
+ a!;
a(){}
}
diff --git a/tests/struct_unexported_trait/source.mk b/tests/struct_unexported_trait/source.mk
new file mode 100644
index 0000000..fb22304
--- /dev/null
+++ b/tests/struct_unexported_trait/source.mk
@@ -0,0 +1 @@
+SIMPLE_XFAIL += struct_unexported_trait,'trait used in pub def must also be exported'
diff --git a/tests/struct_unexported_trait/struct.ek b/tests/struct_unexported_trait/struct.ek
new file mode 100644
index 0000000..acf01f5
--- /dev/null
+++ b/tests/struct_unexported_trait/struct.ek
@@ -0,0 +1,3 @@
+import "trait.ek"
+
+pub typedef struct[trait T] {};
diff --git a/tests/struct_unexported_trait/struct_unexported_trait.ek b/tests/struct_unexported_trait/struct_unexported_trait.ek
new file mode 100644
index 0000000..0e3bd9c
--- /dev/null
+++ b/tests/struct_unexported_trait/struct_unexported_trait.ek
@@ -0,0 +1,5 @@
+import "struct.ek"
+
+main()
+{
+}
diff --git a/tests/struct_unexported_trait/trait.ek b/tests/struct_unexported_trait/trait.ek
new file mode 100644
index 0000000..8280a53
--- /dev/null
+++ b/tests/struct_unexported_trait/trait.ek
@@ -0,0 +1,5 @@
+pub typedef i27 {};
+
+pub define trait {
+ do_something(=> i27);
+}
diff --git a/tests/trait_expand/trait_expand.ek b/tests/trait_expand/trait_expand.ek
index c5f0f1c..d7aa288 100644
--- a/tests/trait_expand/trait_expand.ek
+++ b/tests/trait_expand/trait_expand.ek
@@ -1,15 +1,15 @@
typedef ptr {}
-define b[] {
- a![];
+define b {
+ a!;
}
-define a[] {
+define a {
a(*a a);
}
typedef c {
- b![];
+ b!;
a(*c) {}
}
diff --git a/tests/trait_multiple_expand/source.mk b/tests/trait_multiple_expand/source.mk
index 6d1bcbb..e6193c7 100644
--- a/tests/trait_multiple_expand/source.mk
+++ b/tests/trait_multiple_expand/source.mk
@@ -1 +1 @@
-SIMPLE_XFAIL += trait_multiple_expand
+SIMPLE_XFAIL += trait_multiple_expand,"reimplementation of trait"
diff --git a/tests/trait_multiple_expand/trait_multiple_expand.ek b/tests/trait_multiple_expand/trait_multiple_expand.ek
index 04e2b82..3444305 100644
--- a/tests/trait_multiple_expand/trait_multiple_expand.ek
+++ b/tests/trait_multiple_expand/trait_multiple_expand.ek
@@ -1,21 +1,21 @@
typedef ptr {}
-define b[] {
- c![];
- a![];
+define b {
+ c!;
+ a!;
}
-define a[] {
- c![];
+define a {
+ c!;
a(*a a);
}
-define c[] {
+define c {
c(*c c);
}
typedef d {
- b![];
+ b!;
c(*d d) {}
}
diff --git a/tests/trait_recursive_expand/trait_recursive_expand.ek b/tests/trait_recursive_expand/trait_recursive_expand.ek
index 53012bf..6b71b23 100644
--- a/tests/trait_recursive_expand/trait_recursive_expand.ek
+++ b/tests/trait_recursive_expand/trait_recursive_expand.ek
@@ -1,8 +1,8 @@
-define b[] {
- a![];
+define b {
+ a!;
}
-define a[] {
- b![];
+define a {
+ b!;
a(*a a);
}