diff options
| author | Paul Chaignon <paul.chaignon@gmail.com> | 2023-11-10 12:55:23 +0100 |
|---|---|---|
| committer | Aleksandr Nogikh <nogikh@google.com> | 2023-11-28 10:18:54 +0000 |
| commit | 2e35bb9a19c0711162e650f3723e2dbe061051ee (patch) | |
| tree | fdd6e2e072224fde5efea16f8f7c34155eb4026a /prog | |
| parent | e48d264b33393962163121cebc746a2bc6f7e823 (diff) | |
compiler: support flags as int first argument
This commit adds support for the following syntax:
int_flags = 1, 5, 8, 9
int32[int_flags]
which is equivalent to:
int_flags = 1, 5, 8, 9
flags[int_flags, int32]
The second int type argument, align, is not allowed if the first
argument is a flag. The compiler will also error if the first argument
appears to be a flag (is ident and has no colon), but can't be found in
the map of flags.
Signed-off-by: Paul Chaignon <paul.chaignon@gmail.com>
Diffstat (limited to 'prog')
| -rw-r--r-- | prog/encoding_test.go | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/prog/encoding_test.go b/prog/encoding_test.go index 677375d7f..032ba2e42 100644 --- a/prog/encoding_test.go +++ b/prog/encoding_test.go @@ -273,6 +273,10 @@ func TestDeserialize(t *testing.T) { Err: `wrong type *prog.IntType for AUTO`, }, { + In: `test$bf2(&AUTO={AUTO, 0x10, 0x0})`, + Out: `test$bf2(&(0x7f0000000040)={0x8, 0x10, 0x0})`, + }, + { In: `test$str0(&AUTO="303100090a0d7022273a")`, Out: `test$str0(&(0x7f0000000040)='01\x00\t\n\rp\"\':')`, }, |
