aboutsummaryrefslogtreecommitdiff
path: root/testsuite
diff options
context:
space:
mode:
authorEugen Wissner <belka@caraus.de>2026-08-13 22:55:06 +0200
committerEugen Wissner <belka@caraus.de>2026-08-13 22:55:06 +0200
commitbf7416a3ef9f0b787dcaebf816f3f3e6e385ff42 (patch)
tree26359c705133dbd8e98f06483008a720d0dae9d7 /testsuite
parentae29de96c94e5c582f4424804464cdd29bf2a013 (diff)
downloadelna-bf7416a3ef9f0b787dcaebf816f3f3e6e385ff42.tar.gz
Implement fixed-size integers
Diffstat (limited to 'testsuite')
-rw-r--r--testsuite/fail_compilation/negative_integer_literal_overflow.elna4
-rw-r--r--testsuite/runnable/fixed_int_max.elna6
-rw-r--r--testsuite/runnable/fixed_int_min.elna6
-rw-r--r--testsuite/runnable/fixed_word_max.elna6
4 files changed, 22 insertions, 0 deletions
diff --git a/testsuite/fail_compilation/negative_integer_literal_overflow.elna b/testsuite/fail_compilation/negative_integer_literal_overflow.elna
new file mode 100644
index 0000000..7db4888
--- /dev/null
+++ b/testsuite/fail_compilation/negative_integer_literal_overflow.elna
@@ -0,0 +1,4 @@
+var
+ a: Int8 := -200i8 (* @Error Integer literal overflows *)
+
+end.
diff --git a/testsuite/runnable/fixed_int_max.elna b/testsuite/runnable/fixed_int_max.elna
new file mode 100644
index 0000000..0564dd6
--- /dev/null
+++ b/testsuite/runnable/fixed_int_max.elna
@@ -0,0 +1,6 @@
+begin
+ assert(#max(Int8) = 127i8);
+ assert(#max(Int16) = 32767i16);
+ assert(#max(Int32) = 2147483647i32);
+ assert(#max(Int64) = 9223372036854775807i64)
+end.
diff --git a/testsuite/runnable/fixed_int_min.elna b/testsuite/runnable/fixed_int_min.elna
new file mode 100644
index 0000000..de83d1a
--- /dev/null
+++ b/testsuite/runnable/fixed_int_min.elna
@@ -0,0 +1,6 @@
+begin
+ assert(#min(Int8) = -128i8);
+ assert(#min(Int16) = -32768i16);
+ assert(#min(Int32) = -2147483648i32);
+ assert(#min(Int64) = -9223372036854775808i64)
+end.
diff --git a/testsuite/runnable/fixed_word_max.elna b/testsuite/runnable/fixed_word_max.elna
new file mode 100644
index 0000000..76026a2
--- /dev/null
+++ b/testsuite/runnable/fixed_word_max.elna
@@ -0,0 +1,6 @@
+begin
+ assert(#max(Word8) = 255u8);
+ assert(#max(Word16) = 65535u16);
+ assert(#max(Word32) = 4294967295u32);
+ assert(#max(Word64) = 18446744073709551615u64)
+end.