diff options
| author | Paul Chaignon <paul.chaignon@gmail.com> | 2023-11-19 23:53:28 +0100 |
|---|---|---|
| committer | Aleksandr Nogikh <nogikh@google.com> | 2023-11-29 15:13:40 +0000 |
| commit | f819d6f7cb99737851dcaaa51f11190138fd48d5 (patch) | |
| tree | c095d543d3e32f7beba688a403efb0b49431c876 /pkg/compiler | |
| parent | 91df311f3d62a7add7cd9340026cfc6290ce55dc (diff) | |
compiler/testdata: add missing error cases
This commit adds error cases that weren't covered before. They were
identified by looking at the coverage numbers for pkg/compiler.
Signed-off-by: Paul Chaignon <paul.chaignon@gmail.com>
Diffstat (limited to 'pkg/compiler')
| -rw-r--r-- | pkg/compiler/testdata/errors.txt | 6 | ||||
| -rw-r--r-- | pkg/compiler/testdata/errors2.txt | 11 |
2 files changed, 16 insertions, 1 deletions
diff --git a/pkg/compiler/testdata/errors.txt b/pkg/compiler/testdata/errors.txt index 84cfad221..64a54877b 100644 --- a/pkg/compiler/testdata/errors.txt +++ b/pkg/compiler/testdata/errors.txt @@ -139,6 +139,7 @@ foo$70() ("foo") ### unexpected string "foo", expect attribute foo$71() (42) ### unexpected int 42, expect attribute foo$72() (disabled, disabled) ### duplicate syscall foo$72 attribute disabled foo$73(a int32[int_flags, 2]) ### align argument of int32 is not supported unless first argument is a range +foo$74() (int8:1) ### unexpected ':' opt { ### struct uses reserved name opt f1 int32 @@ -167,6 +168,7 @@ s3 { f7 int32:33 ### bitfield of size 33 is too large for base type of size 32 f8 const[0, int32:C1] ### literal const bitfield sizes are not supported f9 const[0] ### wrong number of arguments for type const, expect value, base type + f10 int8:1:1 ### unexpected ':' } [packed, align[4]] s5 { @@ -201,6 +203,10 @@ s13 { f1 int8 } [size[0[0]]] ### size attribute has colon or args +s14 { + f1 int8 +} [size[1, 2]] ### size attribute is expected to have 1 argument + u3 [ f1 int8 f2 int32 diff --git a/pkg/compiler/testdata/errors2.txt b/pkg/compiler/testdata/errors2.txt index 1120f55ad..13e69ef8a 100644 --- a/pkg/compiler/testdata/errors2.txt +++ b/pkg/compiler/testdata/errors2.txt @@ -157,15 +157,24 @@ slen1 { f7 len[syscall:b, int32] ### len target b does not exist f8 offsetof[parent, int32] ### offsetof must refer to fields f9 offsetof[slen1, int32] ### offsetof must refer to fields + f10 len[f0:syscall:b, int32] ### syscall can't be in the middle of path expressions + f11 len[slen3:a, int32] ### len path slen3 does not refer to a struct slen2 ptr[in, array[slen2]] slen21 slen2 + slen3 slen3 slen22 array[slen2] } slen2 { - f int32 + f int32 + f1 slen3 } +slen3 [ + a int32 + b int32 +] + # Resource ctor tests. resource r100[int32] ### resource r100 can't be created (never mentioned as a syscall return value or output argument/field) |
