aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorBad Diode <bd@badd10de.dev>2024-06-25 17:45:27 +0200
committerBad Diode <bd@badd10de.dev>2024-06-25 17:45:27 +0200
commitbc9aa6e8ad03cd739cd54a9b97f78a14287b9fbd (patch)
tree03f4fa7387a931ea62c7999e3bc4f8839ccce355 /tests
parent1980bc35c8d161089d3f996abcce80bc67056736 (diff)
downloadbdl-bc9aa6e8ad03cd739cd54a9b97f78a14287b9fbd.tar.gz
bdl-bc9aa6e8ad03cd739cd54a9b97f78a14287b9fbd.zip
Add inner struct typechecking
Diffstat (limited to 'tests')
-rw-r--r--tests/semantics.bad31
1 files changed, 26 insertions, 5 deletions
diff --git a/tests/semantics.bad b/tests/semantics.bad
index 0224c77..22dd8d4 100644
--- a/tests/semantics.bad
+++ b/tests/semantics.bad
@@ -1,12 +1,33 @@
1struct vec { 1struct vec {
2 x: f64 2 x: f64 = 2.0
3 y: f64 3 y: f64 = 1.0
4 bruh: { 4 bruh: {
5 id: int 5 id: int = 10
6 msg: str 6 msg: str = "hello"
7 inner: {
8 x: int = 32
9 y: str
10 }
7 } 11 }
8} 12}
9 13
14; struct dud {
15; id: int
16; msg: str
17; }
18
19; let v: vec
20; set v.x = 1.0
21; set v.y = 1.0
22; set v.bruh.id = 1
23
24; let v = vec : {
25; x = 1.0
26; bruh = dud : {
27; id = 1
28; }
29; }
30
10; struct vec { 31; struct vec {
11; x: f64 32; x: f64
12; y: f64 33; y: f64
@@ -24,7 +45,7 @@ struct vec {
24; sun 45; sun
25; } 46; }
26; let a = weekdays.tue 47; let a = weekdays.tue
27; ; let b = a 48; let b = a
28 49
29; struct item { 50; struct item {
30; id: int 51; id: int