aboutsummaryrefslogtreecommitdiff
path: root/testsuite/runnable
diff options
context:
space:
mode:
Diffstat (limited to 'testsuite/runnable')
-rw-r--r--testsuite/runnable/aligned_attribute.elna8
-rw-r--r--testsuite/runnable/varargs.elna16
2 files changed, 20 insertions, 4 deletions
diff --git a/testsuite/runnable/aligned_attribute.elna b/testsuite/runnable/aligned_attribute.elna
index 330847e..45c0c37 100644
--- a/testsuite/runnable/aligned_attribute.elna
+++ b/testsuite/runnable/aligned_attribute.elna
@@ -5,20 +5,20 @@ type
end
Spread = record
- a, #aligned(8) b: Word8
+ a, b #{aligned 8}: Word8
end
Packed = record
a: Word8;
- #aligned(1) wide: Word
+ wide #{aligned 1}: Word
end
- Over = #aligned(16) record
+ Over = record #{aligned 16}
a: Word8
end
var
- #aligned(32) tuned: Word8
+ tuned #{aligned 32}: Word8
spread: Spread
first: ^Word8
second: ^Word8
diff --git a/testsuite/runnable/varargs.elna b/testsuite/runnable/varargs.elna
new file mode 100644
index 0000000..feeb94b
--- /dev/null
+++ b/testsuite/runnable/varargs.elna
@@ -0,0 +1,16 @@
+var
+ buffer: [8]Word8
+ written: Int32
+
+proc snprintf(buffer: ^Word8; size: Word; format: ^const Word8) #{varargs} -> Int32
+extern
+
+program()
+begin
+ written := snprintf(@buffer[1], 8u, "%d %.1f".ptr, 200u8, 1.5f);
+ assert(written = 7i32);
+ assert(buffer[1] = '2');
+ assert(buffer[7] = '5')
+return 0u8
+
+end.