diff options
| author | Zuhaitz Méndez Fernández de Aránguiz <zuhaitz@debian> | 2026-01-24 01:39:38 +0000 |
|---|---|---|
| committer | Zuhaitz Méndez Fernández de Aránguiz <zuhaitz@debian> | 2026-01-24 01:39:52 +0000 |
| commit | 3df7cada4c3d050a01980afffdbfc0fc60be0fb5 (patch) | |
| tree | aa1dd603039d284f58b62c89bb662fd74c19deda /tests/generics | |
| parent | 769d8ff1a1fd898e1a8c8b299f7e7fa444f32528 (diff) | |
Fix for #106
Diffstat (limited to 'tests/generics')
| -rw-r--r-- | tests/generics/test_sizeof_template.zc | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/tests/generics/test_sizeof_template.zc b/tests/generics/test_sizeof_template.zc new file mode 100644 index 0000000..8390512 --- /dev/null +++ b/tests/generics/test_sizeof_template.zc @@ -0,0 +1,40 @@ +struct Struct<T> { + val: T; +} + +fn hello<T>() { + var s = sizeof(Struct<T>); + println "size: {s}"; +} + +test "sizeof template" { + var _first: Struct<i32>; + hello<i32>(); + var _second: Struct<f64>; + hello<f64>(); +} + +struct Mixed<T> { + val: T; + flag: u8; +} + +test "sizeof mixed" { + var s1 = sizeof(Mixed<i32>); + println "i32 mixed: {s1}"; + var s2 = sizeof(Mixed<f64>); + println "f64 mixed: {s2}"; +} + +@packed +struct PackedMixed<T> { + val: T; + flag: u8; +} + +test "sizeof packed mixed" { + var s1 = sizeof(PackedMixed<i32>); + println "i32 packed mixed: {s1}"; + var s2 = sizeof(PackedMixed<f64>); + println "f64 packed mixed: {s2}"; +}
\ No newline at end of file |
