diff options
Diffstat (limited to 'testsuite/fail_compilation')
| -rw-r--r-- | testsuite/fail_compilation/aligned_attribute.elna | 8 | ||||
| -rw-r--r-- | testsuite/fail_compilation/varargs_argument.elna | 12 | ||||
| -rw-r--r-- | testsuite/fail_compilation/varargs_attribute.elna | 8 |
3 files changed, 24 insertions, 4 deletions
diff --git a/testsuite/fail_compilation/aligned_attribute.elna b/testsuite/fail_compilation/aligned_attribute.elna index 3b5a56e..aab5513 100644 --- a/testsuite/fail_compilation/aligned_attribute.elna +++ b/testsuite/fail_compilation/aligned_attribute.elna @@ -1,15 +1,15 @@ type Uneven = record - #aligned(3) x: Word8 (* @Error Alignment must be a power of two *) + x #{aligned 3}: Word8 (* @Error Alignment must be a power of two *) end Twice = record - #aligned(4) #aligned(8) y: Word8 (* @Error Attribute '#aligned' specified more than once *) + y #{aligned 4} #{aligned 8}: Word8 (* @Error Attribute 'aligned' specified more than once *) end Unknown = record - #packed(1) z: Word8 (* @Error Attribute '#packed' not declared *) + z #{packed 1}: Word8 (* @Error Attribute 'packed' not declared *) end -proc takes(#aligned(8) p: Int) (* @Error Attribute '#aligned' is not supported in this position *) +proc takes(p #{aligned 8}: Int) (* @Error Attribute 'aligned' is not supported in this position *) begin return diff --git a/testsuite/fail_compilation/varargs_argument.elna b/testsuite/fail_compilation/varargs_argument.elna new file mode 100644 index 0000000..1325c29 --- /dev/null +++ b/testsuite/fail_compilation/varargs_argument.elna @@ -0,0 +1,12 @@ +var + written: Int32 + +proc printf(format: ^const Word8) #{varargs} -> Int32 +extern + +program() +begin + written := printf("%s".ptr, "text") (* @Error Type '\[\]const Word8' cannot be passed as a variadic argument *) +return 0u8 + +end. diff --git a/testsuite/fail_compilation/varargs_attribute.elna b/testsuite/fail_compilation/varargs_attribute.elna new file mode 100644 index 0000000..1c6d3e0 --- /dev/null +++ b/testsuite/fail_compilation/varargs_attribute.elna @@ -0,0 +1,8 @@ +proc with_body(x: Int) #{varargs} (* @Error Attribute 'varargs' is not supported in this position *) +begin +return + +proc no_parameters() #{varargs} -> Int32 (* @Error Attribute 'varargs' requires at least one parameter *) +extern + +end. |
