YREA-SLS/SLS_Tests/cases.yaml

2696 lines
46 KiB
YAML

- name: Empty_Statement
code: ''
tokens: []
- name: Integer Default Decimal 0
code: '0'
tokens:
- type: i64
value: 0
operations:
- function: push
type: i64
value: 0
stack_final:
- type: i64
value: 0
- name: Integer Default Decimal -1
code: '-1'
tokens:
- type: i64
value: -1
operations:
- function: push
type: i64
value: -1
stack_final:
- type: i64
value: -1
- name: Integer Default Decimal 42
code: '42'
tokens:
- type: i64
value: 42
operations:
- function: push
type: i64
value: 42
stack_final:
- type: i64
value: 42
- name: Integer Default Decimal Leading Zeros
code: '00042'
tokens:
- type: i64
value: 42
operations:
- function: push
type: i64
value: 42
stack_final:
- type: i64
value: 42
- name: Integer Default Hex 0xFF
code: '0xFF'
tokens:
- type: i64
value: 255
operations:
- function: push
type: i64
value: 255
stack_final:
- type: i64
value: 255
- name: Integer Default Hex 0xdeadbeef
code: '0xdeadbeef'
tokens:
- type: i64
value: 3735928559
operations:
- function: push
type: i64
value: 3735928559
stack_final:
- type: i64
value: 3735928559
- name: Integer Default Hex Max
code: '0x7FFFFFFFFFFFFFFF'
tokens:
- type: i64
value: 9223372036854775807
operations:
- function: push
type: i64
value: 9223372036854775807
stack_final:
- type: i64
value: 9223372036854775807
- name: Integer Default Binary 0b1010
code: '0b1010'
tokens:
- type: i64
value: 10
operations:
- function: push
type: i64
value: 10
stack_final:
- type: i64
value: 10
- name: Integer Default Binary All Ones
code: '0b1111111111111111'
tokens:
- type: i64
value: 65535
operations:
- function: push
type: i64
value: 65535
stack_final:
- type: i64
value: 65535
- name: Integer Default Octal 0o755
code: 0o755
tokens:
- type: i64
value: 493
operations:
- function: push
type: i64
value: 493
stack_final:
- type: i64
value: 493
- name: Integer Default Octal Max Three Digits
code: 0o777
tokens:
- type: i64
value: 511
operations:
- function: push
type: i64
value: 511
stack_final:
- type: i64
value: 511
- name: Integer Default Decimal Max i64
code: '9223372036854775807'
tokens:
- type: i64
value: 9223372036854775807
operations:
- function: push
type: i64
value: 9223372036854775807
stack_final:
- type: i64
value: 9223372036854775807
- name: Integer Default Decimal Min i64
code: '-9223372036854775808'
tokens:
- type: i64
value: INT64_MIN
operations:
- function: push
type: i64
value: INT64_MIN
stack_final:
- type: i64
value: INT64_MIN
- name: Integer Default Decimal with Underscore
code: '1_000_000'
tokens:
- type: i64
value: 1000000
operations:
- function: push
type: i64
value: 1000000
stack_final:
- type: i64
value: 1000000
- name: Integer Default Underscore End
code: '42_'
tokens:
- type: i64
value: 42
operations:
- function: push
type: i64
value: 42
stack_final:
- type: i64
value: 42
- name: Integer Default Underscore Double
code: '4__2'
tokens:
- type: i64
value: 42
operations:
- function: push
type: i64
value: 42
stack_final:
- type: i64
value: 42
- name: Integer Default Whitespace
code: ' 42 '
tokens:
- type: i64
value: 42
operations:
- function: push
type: i64
value: 42
stack_final:
- type: i64
value: 42
- name: Integer Default Hex Zero
code: '0x0'
tokens:
- type: i64
value: 0
operations:
- function: push
type: i64
value: 0
stack_final:
- type: i64
value: 0
- name: Integer Default Binary Zero
code: '0b0'
tokens:
- type: i64
value: 0
operations:
- function: push
type: i64
value: 0
stack_final:
- type: i64
value: 0
- name: Integer Default Octal Zero
code: 0o0
tokens:
- type: i64
value: 0
operations:
- function: push
type: i64
value: 0
stack_final:
- type: i64
value: 0
- name: Integer Default Decimal with Commas Invalid
code: 1,000,000
tokens:
- type: error
value: 'Invalid decimal literal: unexpected '','' in decimal integer.'
- name: Integer Default Invalid Characters
code: 12a3
tokens:
- type: error
value: 'Invalid decimal literal: unexpected ''a'' in decimal integer.'
- name: Integer Default Invalid Prefix
code: 0b2
tokens:
- type: error
value: 'Invalid binary literal: unexpected ''2'' in binary integer.'
- name: Integer i8 Decimal Positive
code: 42:i8
tokens:
- type: i8
value: 42
operations:
- function: push
type: i8
value: 42
stack_final:
- type: i8
value: 42
- name: Integer i8 Zero
code: 0:i8
tokens:
- type: i8
value: 0
operations:
- function: push
type: i8
value: 0
stack_final:
- type: i8
value: 0
- name: Integer i8 Decimal Negative
code: -100:i8
tokens:
- type: i8
value: -100
operations:
- function: push
type: i8
value: -100
stack_final:
- type: i8
value: -100
- name: Integer i8 Hex
code: 0x7F:i8
tokens:
- type: i8
value: 127
operations:
- function: push
type: i8
value: 127
stack_final:
- type: i8
value: 127
- name: Integer i8 Binary
code: 0b1111:i8
tokens:
- type: i8
value: 15
operations:
- function: push
type: i8
value: 15
stack_final:
- type: i8
value: 15
- name: Integer i8 Octal
code: 0o77:i8
tokens:
- type: i8
value: 63
operations:
- function: push
type: i8
value: 63
stack_final:
- type: i8
value: 63
- name: Integer i8 Max Value
code: 127:i8
tokens:
- type: i8
value: 127
operations:
- function: push
type: i8
value: 127
stack_final:
- type: i8
value: 127
- name: Integer i8 Min Value
code: -128:i8
tokens:
- type: i8
value: -128
operations:
- function: push
type: i8
value: -128
stack_final:
- type: i8
value: -128
- name: Integer i8 Overflow
code: 128:i8
tokens:
- type: error
value: 'Integer overflow: value exceeds range for i8.'
- name: Integer i8 Underflow
code: -129:i8
tokens:
- type: error
value: 'Integer overflow: value exceeds range for i8.'
- name: Integer i8 Hex Max
code: 0x7F:i8
tokens:
- type: i8
value: 127
operations:
- function: push
type: i8
value: 127
stack_final:
- type: i8
value: 127
- name: Integer i8 Binary Max
code: 0b01111111:i8
tokens:
- type: i8
value: 127
operations:
- function: push
type: i8
value: 127
stack_final:
- type: i8
value: 127
- name: Integer i8 Octal Max
code: 0o177:i8
tokens:
- type: i8
value: 127
operations:
- function: push
type: i8
value: 127
stack_final:
- type: i8
value: 127
- name: Integer i8 Negative Hex
code: -0x80:i8
tokens:
- type: i8
value: -128
operations:
- function: push
type: i8
value: -128
stack_final:
- type: i8
value: -128
- name: Integer i16 Decimal Positive
code: 42:i16
tokens:
- type: i16
value: 42
operations:
- function: push
type: i16
value: 42
stack_final:
- type: i16
value: 42
- name: Integer i16 Zero
code: 0:i16
tokens:
- type: i16
value: 0
operations:
- function: push
type: i16
value: 0
stack_final:
- type: i16
value: 0
- name: Integer i16 Decimal Negative
code: -100:i16
tokens:
- type: i16
value: -100
operations:
- function: push
type: i16
value: -100
stack_final:
- type: i16
value: -100
- name: Integer i16 Hex
code: 0xFF:i16
tokens:
- type: i16
value: 255
operations:
- function: push
type: i16
value: 255
stack_final:
- type: i16
value: 255
- name: Integer i16 Binary
code: 0b1111:i16
tokens:
- type: i16
value: 15
operations:
- function: push
type: i16
value: 15
stack_final:
- type: i16
value: 15
- name: Integer i16 Octal
code: 0o77:i16
tokens:
- type: i16
value: 63
operations:
- function: push
type: i16
value: 63
stack_final:
- type: i16
value: 63
- name: Integer i16 Max Value
code: 32767:i16
tokens:
- type: i16
value: 32767
operations:
- function: push
type: i16
value: 32767
stack_final:
- type: i16
value: 32767
- name: Integer i16 Min Value
code: -32768:i16
tokens:
- type: i16
value: -32768
operations:
- function: push
type: i16
value: -32768
stack_final:
- type: i16
value: -32768
- name: Integer i16 Overflow
code: 32768:i16
tokens:
- type: error
value: 'Integer overflow: value exceeds range for i16.'
- name: Integer i16 Underflow
code: -32769:i16
tokens:
- type: error
value: 'Integer overflow: value exceeds range for i16.'
- name: Integer i16 Hex Sample
code: 0x1234:i16
tokens:
- type: i16
value: 4660
operations:
- function: push
type: i16
value: 4660
stack_final:
- type: i16
value: 4660
- name: Integer i16 Binary Sample
code: 0b1111111100000000:i16
tokens:
- type: i16
value: 65280
operations:
- function: push
type: i16
value: 65280
stack_final:
- type: i16
value: 65280
- name: Integer i16 Octal Sample
code: 0o1234:i16
tokens:
- type: i16
value: 668
operations:
- function: push
type: i16
value: 668
stack_final:
- type: i16
value: 668
- name: Integer i32 Decimal Positive
code: 42:i32
tokens:
- type: i32
value: 42
operations:
- function: push
type: i32
value: 42
stack_final:
- type: i32
value: 42
- name: Integer i32 Zero
code: 0:i32
tokens:
- type: i32
value: 0
operations:
- function: push
type: i32
value: 0
stack_final:
- type: i32
value: 0
- name: Integer i32 Decimal Negative
code: -100:i32
tokens:
- type: i32
value: -100
operations:
- function: push
type: i32
value: -100
stack_final:
- type: i32
value: -100
- name: Integer i32 Hex
code: 0xFF:i32
tokens:
- type: i32
value: 255
operations:
- function: push
type: i32
value: 255
stack_final:
- type: i32
value: 255
- name: Integer i32 Binary
code: 0b1111:i32
tokens:
- type: i32
value: 15
operations:
- function: push
type: i32
value: 15
stack_final:
- type: i32
value: 15
- name: Integer i32 Octal
code: 0o77:i32
tokens:
- type: i32
value: 63
operations:
- function: push
type: i32
value: 63
stack_final:
- type: i32
value: 63
- name: Integer i32 Max Value
code: 2147483647:i32
tokens:
- type: i32
value: 2147483647
operations:
- function: push
type: i32
value: 2147483647
stack_final:
- type: i32
value: 2147483647
- name: Integer i32 Min Value
code: -2147483648:i32
tokens:
- type: i32
value: -2147483648
operations:
- function: push
type: i32
value: -2147483648
stack_final:
- type: i32
value: -2147483648
- name: Integer i32 Overflow
code: 2147483648:i32
tokens:
- type: error
value: 'Integer overflow: value exceeds range for i32.'
- name: Integer i32 Underflow
code: -2147483649:i32
tokens:
- type: error
value: 'Integer overflow: value exceeds range for i32.'
- name: Integer i32 With Underscores
code: 1_000_000:i32
tokens:
- type: i32
value: 1000000
operations:
- function: push
type: i32
value: 1000000
stack_final:
- type: i32
value: 1000000
- name: Integer i32 Hex Sample
code: 0xABCD:i32
tokens:
- type: i32
value: 43981
operations:
- function: push
type: i32
value: 43981
stack_final:
- type: i32
value: 43981
- name: Integer i32 Binary Sample
code: 0b11110000:i32
tokens:
- type: i32
value: 240
operations:
- function: push
type: i32
value: 240
stack_final:
- type: i32
value: 240
- name: Integer i64 Decimal Positive
code: 42:i64
tokens:
- type: i64
value: 42
operations:
- function: push
type: i64
value: 42
stack_final:
- type: i64
value: 42
- name: Integer i64 Zero
code: 0:i64
tokens:
- type: i64
value: 0
operations:
- function: push
type: i64
value: 0
stack_final:
- type: i64
value: 0
- name: Integer i64 Decimal Negative
code: -100:i64
tokens:
- type: i64
value: -100
operations:
- function: push
type: i64
value: -100
stack_final:
- type: i64
value: -100
- name: Integer i64 Hex
code: 0xFF:i64
tokens:
- type: i64
value: 255
operations:
- function: push
type: i64
value: 255
stack_final:
- type: i64
value: 255
- name: Integer i64 Binary
code: 0b1111:i64
tokens:
- type: i64
value: 15
operations:
- function: push
type: i64
value: 15
stack_final:
- type: i64
value: 15
- name: Integer i64 Octal
code: 0o77:i64
tokens:
- type: i64
value: 63
operations:
- function: push
type: i64
value: 63
stack_final:
- type: i64
value: 63
- name: Integer i64 Max Value
code: 9223372036854775807:i64
tokens:
- type: i64
value: 9223372036854775807
operations:
- function: push
type: i64
value: 9223372036854775807
stack_final:
- type: i64
value: 9223372036854775807
- name: Integer i64 Min Value
code: -9223372036854775808:i64
tokens:
- type: i64
value: INT64_MIN
operations:
- function: push
type: i64
value: INT64_MIN
stack_final:
- type: i64
value: INT64_MIN
- name: Integer i64 Overflow
code: 9223372036854775808:i64
tokens:
- type: error
value: 'Integer overflow: value exceeds range for i64.'
- name: Integer i64 Underflow
code: -9223372036854775809:i64
tokens:
- type: error
value: 'Integer overflow: value exceeds range for i64.'
- name: Integer i64 With Underscores
code: 1_000_000:i64
tokens:
- type: i64
value: 1000000
operations:
- function: push
type: i64
value: 1000000
stack_final:
- type: i64
value: 1000000
- name: Integer i64 Decimal Positive 42
code: 42:i64
tokens:
- type: i64
value: 42
operations:
- function: push
type: i64
value: 42
stack_final:
- type: i64
value: 42
- name: Integer i64 Hex 0xFF
code: 0xFF:i64
tokens:
- type: i64
value: 255
operations:
- function: push
type: i64
value: 255
stack_final:
- type: i64
value: 255
- name: Integer i64 Binary 0b1010
code: 0b1010:i64
tokens:
- type: i64
value: 10
operations:
- function: push
type: i64
value: 10
stack_final:
- type: i64
value: 10
- name: Integer i64 Octal 0o755
code: 0o755:i64
tokens:
- type: i64
value: 493
operations:
- function: push
type: i64
value: 493
stack_final:
- type: i64
value: 493
- name: Integer u8 Decimal Positive
code: 42:u8
tokens:
- type: u8
value: 42
operations:
- function: push
type: u8
value: 42
stack_final:
- type: u8
value: 42
- name: Integer u8 Zero
code: 0:u8
tokens:
- type: u8
value: 0
operations:
- function: push
type: u8
value: 0
stack_final:
- type: u8
value: 0
- name: Integer u8 Hex
code: 0xFF:u8
tokens:
- type: u8
value: 255
operations:
- function: push
type: u8
value: 255
stack_final:
- type: u8
value: 255
- name: Integer u8 Binary
code: 0b1111:u8
tokens:
- type: u8
value: 15
operations:
- function: push
type: u8
value: 15
stack_final:
- type: u8
value: 15
- name: Integer u8 Octal
code: 0o77:u8
tokens:
- type: u8
value: 63
operations:
- function: push
type: u8
value: 63
stack_final:
- type: u8
value: 63
- name: Integer u8 Max Value
code: 255:u8
tokens:
- type: u8
value: 255
operations:
- function: push
type: u8
value: 255
stack_final:
- type: u8
value: 255
- name: Integer u8 Min Value
code: 0:u8
tokens:
- type: u8
value: 0
operations:
- function: push
type: u8
value: 0
stack_final:
- type: u8
value: 0
- name: Integer u8 Overflow
code: 256:u8
tokens:
- type: error
value: 'Integer overflow: value exceeds range for u8.'
- name: Integer u8 Underflow
code: -1:u8
tokens:
- type: error
value: 'Integer overflow: value exceeds range for u8.'
- name: Integer u8 Hex Max
code: 0xFF:u8
tokens:
- type: u8
value: 255
operations:
- function: push
type: u8
value: 255
stack_final:
- type: u8
value: 255
- name: Integer u8 Binary Max
code: 0b11111111:u8
tokens:
- type: u8
value: 255
operations:
- function: push
type: u8
value: 255
stack_final:
- type: u8
value: 255
- name: Integer u8 Octal Max
code: 0o377:u8
tokens:
- type: u8
value: 255
operations:
- function: push
type: u8
value: 255
stack_final:
- type: u8
value: 255
- name: Integer u16 Decimal Positive
code: 42:u16
tokens:
- type: u16
value: 42
operations:
- function: push
type: u16
value: 42
stack_final:
- type: u16
value: 42
- name: Integer u16 Zero
code: 0:u16
tokens:
- type: u16
value: 0
operations:
- function: push
type: u16
value: 0
stack_final:
- type: u16
value: 0
- name: Integer u16 Hex
code: 0xFF:u16
tokens:
- type: u16
value: 255
operations:
- function: push
type: u16
value: 255
stack_final:
- type: u16
value: 255
- name: Integer u16 Binary
code: 0b1111:u16
tokens:
- type: u16
value: 15
operations:
- function: push
type: u16
value: 15
stack_final:
- type: u16
value: 15
- name: Integer u16 Octal
code: 0o77:u16
tokens:
- type: u16
value: 63
operations:
- function: push
type: u16
value: 63
stack_final:
- type: u16
value: 63
- name: Integer u16 Max Value
code: 65535:u16
tokens:
- type: u16
value: 65535
operations:
- function: push
type: u16
value: 65535
stack_final:
- type: u16
value: 65535
- name: Integer u16 Min Value
code: 0:u16
tokens:
- type: u16
value: 0
operations:
- function: push
type: u16
value: 0
stack_final:
- type: u16
value: 0
- name: Integer u16 Overflow
code: 65536:u16
tokens:
- type: error
value: 'Integer overflow: value exceeds range for u16.'
- name: Integer u16 Underflow
code: -1:u16
tokens:
- type: error
value: 'Integer overflow: value exceeds range for u16.'
- name: Integer u16 Hex Max
code: 0xFFFF:u16
tokens:
- type: u16
value: 65535
operations:
- function: push
type: u16
value: 65535
stack_final:
- type: u16
value: 65535
- name: Integer u16 Binary Max
code: 0b1111111111111111:u16
tokens:
- type: u16
value: 65535
operations:
- function: push
type: u16
value: 65535
stack_final:
- type: u16
value: 65535
- name: Integer u16 Octal Max
code: 0o177777:u16
tokens:
- type: u16
value: 65535
operations:
- function: push
type: u16
value: 65535
stack_final:
- type: u16
value: 65535
- name: Integer u16 Decimal Mid
code: 50000:u16
tokens:
- type: u16
value: 50000
operations:
- function: push
type: u16
value: 50000
stack_final:
- type: u16
value: 50000
- name: Integer u32 Decimal Positive
code: 42:u32
tokens:
- type: u32
value: 42
operations:
- function: push
type: u32
value: 42
stack_final:
- type: u32
value: 42
- name: Integer u32 Zero
code: 0:u32
tokens:
- type: u32
value: 0
operations:
- function: push
type: u32
value: 0
stack_final:
- type: u32
value: 0
- name: Integer u32 Hex
code: 0xFF:u32
tokens:
- type: u32
value: 255
operations:
- function: push
type: u32
value: 255
stack_final:
- type: u32
value: 255
- name: Integer u32 Binary
code: 0b1111:u32
tokens:
- type: u32
value: 15
operations:
- function: push
type: u32
value: 15
stack_final:
- type: u32
value: 15
- name: Integer u32 Octal
code: 0o77:u32
tokens:
- type: u32
value: 63
operations:
- function: push
type: u32
value: 63
stack_final:
- type: u32
value: 63
- name: Integer u32 Max Value
code: 4294967295:u32
tokens:
- type: u32
value: 4294967295
operations:
- function: push
type: u32
value: 4294967295
stack_final:
- type: u32
value: 4294967295
- name: Integer u32 Min Value
code: 0:u32
tokens:
- type: u32
value: 0
operations:
- function: push
type: u32
value: 0
stack_final:
- type: u32
value: 0
- name: Integer u32 Overflow
code: 4294967296:u32
tokens:
- type: error
value: 'Integer overflow: value exceeds range for u32.'
- name: Integer u32 Underflow
code: -1:u32
tokens:
- type: error
value: 'Integer overflow: value exceeds range for u32.'
- name: Integer u32 With Underscores
code: 1_000_000:u32
tokens:
- type: u32
value: 1000000
operations:
- function: push
type: u32
value: 1000000
stack_final:
- type: u32
value: 1000000
- name: Integer u32 Hex Max
code: 0xFFFFFFFF:u32
tokens:
- type: u32
value: 4294967295
operations:
- function: push
type: u32
value: 4294967295
stack_final:
- type: u32
value: 4294967295
- name: Integer u32 Binary Sample
code: 0b11111111000000001111111100000000:u32
tokens:
- type: u32
value: 4278255360
operations:
- function: push
type: u32
value: 4278255360
stack_final:
- type: u32
value: 4278255360
- name: Integer u32 Octal Max
code: 0o37777777777:u32
tokens:
- type: u32
value: 4294967295
operations:
- function: push
type: u32
value: 4294967295
stack_final:
- type: u32
value: 4294967295
- name: Integer u32 Decimal Mid
code: 1000000:u32
tokens:
- type: u32
value: 1000000
operations:
- function: push
type: u32
value: 1000000
stack_final:
- type: u32
value: 1000000
- name: Integer u64 Decimal Positive
code: 42:u64
tokens:
- type: u64
value: 42
operations:
- function: push
type: u64
value: 42
stack_final:
- type: u64
value: 42
- name: Integer u64 Zero
code: 0:u64
tokens:
- type: u64
value: 0
operations:
- function: push
type: u64
value: 0
stack_final:
- type: u64
value: 0
- name: Integer u64 Hex
code: 0xFF:u64
tokens:
- type: u64
value: 255
operations:
- function: push
type: u64
value: 255
stack_final:
- type: u64
value: 255
- name: Integer u64 Binary
code: 0b1111:u64
tokens:
- type: u64
value: 15
operations:
- function: push
type: u64
value: 15
stack_final:
- type: u64
value: 15
- name: Integer u64 Octal
code: 0o77:u64
tokens:
- type: u64
value: 63
operations:
- function: push
type: u64
value: 63
stack_final:
- type: u64
value: 63
- name: Integer u64 Max Value
code: 18446744073709551615:u64
tokens:
- type: u64
value: UINT64_MAX
operations:
- function: push
type: u64
value: UINT64_MAX
stack_final:
- type: u64
value: UINT64_MAX
- name: Integer u64 Min Value
code: 0:u64
tokens:
- type: u64
value: 0
operations:
- function: push
type: u64
value: 0
stack_final:
- type: u64
value: 0
- name: Integer u64 Overflow
code: 18446744073709551616:u64
tokens:
- type: error
value: 'Integer overflow: value exceeds range for u64.'
- name: Integer u64 Underflow
code: -1:u64
tokens:
- type: error
value: 'Integer overflow: value exceeds range for u64.'
- name: Integer u64 With Underscores
code: 1_000_000:u64
tokens:
- type: u64
value: 1000000
operations:
- function: push
type: u64
value: 1000000
stack_final:
- type: u64
value: 1000000
- name: Integer u64 Hex Max
code: 0xFFFFFFFFFFFFFFFF:u64
tokens:
- type: u64
value: UINT64_MAX
operations:
- function: push
type: u64
value: UINT64_MAX
stack_final:
- type: u64
value: UINT64_MAX
- name: Integer u64 Binary Sample
code: 0b1010101010101010:u64
tokens:
- type: u64
value: 43690
operations:
- function: push
type: u64
value: 43690
stack_final:
- type: u64
value: 43690
- name: Integer u64 Octal Sample
code: 0o7777:u64
tokens:
- type: u64
value: 4095
operations:
- function: push
type: u64
value: 4095
stack_final:
- type: u64
value: 4095
- name: Integer u64 Decimal
code: 42:u64
tokens:
- type: u64
value: 42
operations:
- function: push
type: u64
value: 42
stack_final:
- type: u64
value: 42
- name: Integer Hex With Underscores
code: 0xDEAD_BEEF:i64
tokens:
- type: i64
value: 3735928559
operations:
- function: push
type: i64
value: 3735928559
stack_final:
- type: i64
value: 3735928559
- name: Integer Binary With Underscores
code: 0b1111_0000_1010_0101:i32
tokens:
- type: i32
value: 61605
operations:
- function: push
type: i32
value: 61605
stack_final:
- type: i32
value: 61605
- name: Integer Octal With Underscores
code: 0o7_7_7:i16
tokens:
- type: i16
value: 511
operations:
- function: push
type: i16
value: 511
stack_final:
- type: i16
value: 511
- name: Float Default Simple
code: '3.14'
tokens:
- type: f64
value: 3.14
operations:
- function: push
type: f64
value: 3.14
stack_final:
- type: f64
value: 3.14
- name: Float Default Zero
code: '0.0'
tokens:
- type: f64
value: 0.0
operations:
- function: push
type: f64
value: 0.0
stack_final:
- type: f64
value: 0.0
- name: Float Default Negative
code: '-2.5'
tokens:
- type: f64
value: -2.5
operations:
- function: push
type: f64
value: -2.5
stack_final:
- type: f64
value: -2.5
- name: Float Default One
code: '1.0'
tokens:
- type: f64
value: 1.0
operations:
- function: push
type: f64
value: 1.0
stack_final:
- type: f64
value: 1.0
- name: Float f32 Simple
code: 3.14:f32
tokens:
- type: f32
value: 3.14
operations:
- function: push
type: f32
value: 3.14
stack_final:
- type: f32
value: 3.14
- name: Float f64 Simple
code: 2.718:f64
tokens:
- type: f64
value: 2.718
operations:
- function: push
type: f64
value: 2.718
stack_final:
- type: f64
value: 2.718
- name: Float Default Leading Zeros
code: '00042.5'
tokens:
- type: f64
value: 42.5
operations:
- function: push
type: f64
value: 42.5
stack_final:
- type: f64
value: 42.5
- name: Float Default Leading Zero Decimal
code: '0.5'
tokens:
- type: f64
value: 0.5
operations:
- function: push
type: f64
value: 0.5
stack_final:
- type: f64
value: 0.5
- name: Float Default Trailing Zeros
code: '3.1400'
tokens:
- type: f64
value: 3.14
operations:
- function: push
type: f64
value: 3.14
stack_final:
- type: f64
value: 3.14
- name: Float Default No Leading Digit
code: '.5'
tokens:
- type: f64
value: 0.5
operations:
- function: push
type: f64
value: 0.5
stack_final:
- type: f64
value: 0.5
- name: Float Default No Leading Digit Negative
code: -.25
tokens:
- type: f64
value: -0.25
operations:
- function: push
type: f64
value: -0.25
stack_final:
- type: f64
value: -0.25
- name: Float Default No Trailing Digits
code: '42.'
tokens:
- type: f64
value: 42.0
operations:
- function: push
type: f64
value: 42.0
stack_final:
- type: f64
value: 42.0
- name: Float Default No Trailing Digits Negative
code: '-7.'
tokens:
- type: f64
value: -7.0
operations:
- function: push
type: f64
value: -7.0
stack_final:
- type: f64
value: -7.0
- name: Float Default Very Small
code: '0.000001'
tokens:
- type: f64
value: 1.0e-06
operations:
- function: push
type: f64
value: 1.0e-06
stack_final:
- type: f64
value: 1.0e-06
- name: Float Default Very Large
code: '1000000.0'
tokens:
- type: f64
value: 1000000.0
operations:
- function: push
type: f64
value: 1000000.0
stack_final:
- type: f64
value: 1000000.0
- name: Float Default Underscore Integer Part
code: '1_000_000.5'
tokens:
- type: f64
value: 1000000.5
operations:
- function: push
type: f64
value: 1000000.5
stack_final:
- type: f64
value: 1000000.5
- name: Float Default Underscore Decimal Part
code: '3.141_592_653'
tokens:
- type: f64
value: 3.141592653
operations:
- function: push
type: f64
value: 3.141592653
stack_final:
- type: f64
value: 3.141592653
- name: Float Default Underscore Both Parts
code: '1_234.567_89'
tokens:
- type: f64
value: 1234.56789
operations:
- function: push
type: f64
value: 1234.56789
stack_final:
- type: f64
value: 1234.56789
- name: Float Default Underscore Trailing
code: '42.5_'
tokens:
- type: f64
value: 42.5
operations:
- function: push
type: f64
value: 42.5
stack_final:
- type: f64
value: 42.5
- name: Float Default Underscore Double
code: '4__2.5'
tokens:
- type: f64
value: 42.5
operations:
- function: push
type: f64
value: 42.5
stack_final:
- type: f64
value: 42.5
- name: Float f32 With Underscores
code: 1_234.567_89:f32
tokens:
- type: f32
value: 1234.56789
operations:
- function: push
type: f32
value: 1234.56789
stack_final:
- type: f32
value: 1234.56789
- name: Float f32 Precision Limit
code: 1.2345678:f32
tokens:
- type: f32
value: 1.2345678
operations:
- function: push
type: f32
value: 1.2345678
stack_final:
- type: f32
value: 1.2345678
- name: Float f32 High Precision
code: 3.141592653589793:f32
tokens:
- type: f32
value: 3.141592653589793
operations:
- function: push
type: f32
value: 3.141592653589793
stack_final:
- type: f32
value: 3.141592653589793
- name: Float f64 Precision Limit
code: 1.234567890123456:f64
tokens:
- type: f64
value: 1.234567890123456
operations:
- function: push
type: f64
value: 1.234567890123456
stack_final:
- type: f64
value: 1.234567890123456
- name: Float f64 High Precision
code: 3.141592653589793238:f64
tokens:
- type: f64
value: 3.141592653589793
operations:
- function: push
type: f64
value: 3.141592653589793
stack_final:
- type: f64
value: 3.141592653589793
- name: Float f64 Close Numbers 1
code: 1.0000000000000001:f64
tokens:
- type: f64
value: 1.0
operations:
- function: push
type: f64
value: 1.0
stack_final:
- type: f64
value: 1.0
- name: Float f64 Close Numbers 2
code: 1.0000000000000002:f64
tokens:
- type: f64
value: 1.0000000000000002
operations:
- function: push
type: f64
value: 1.0000000000000002
stack_final:
- type: f64
value: 1.0000000000000002
- name: Float Invalid Multiple Decimal Points
code: 3.14.159
tokens:
- type: error
value: 'Invalid float literal: unexpected ''.'' in float.'
- name: Float Invalid Characters
code: 3.1a4
tokens:
- type: error
value: 'Invalid float literal: unexpected ''a'' in float.'
- name: Float Invalid Type Annotation
code: 3.14:i32
tokens:
- type: error
value: 'Invalid float type: must be of type ''f64'' or ''f32''.'
- name: Float Invalid Type Name
code: 3.14:f16
tokens:
- type: error
value: 'Invalid float type: must be of type ''f64'' or ''f32''.'
- name: Float Invalid Comma Separator
code: 1,234.56
tokens:
- type: error
value: 'Invalid float literal: unexpected '','' in float.'
- name: Float Default Leading Whitespace
code: ' 3.14'
tokens:
- type: f64
value: 3.14
operations:
- function: push
type: f64
value: 3.14
stack_final:
- type: f64
value: 3.14
- name: Float Default Trailing Whitespace
code: '3.14 '
tokens:
- type: f64
value: 3.14
operations:
- function: push
type: f64
value: 3.14
stack_final:
- type: f64
value: 3.14
- name: Float Default Both Whitespace
code: ' 3.14 '
tokens:
- type: f64
value: 3.14
operations:
- function: push
type: f64
value: 3.14
stack_final:
- type: f64
value: 3.14
- name: Float f32 With Whitespace
code: ' 2.718:f32 '
tokens:
- type: f32
value: 2.718
operations:
- function: push
type: f32
value: 2.718
stack_final:
- type: f32
value: 2.718
- name: Float Default Pi Approximate
code: '3.141592653589793'
tokens:
- type: f64
value: 3.141592653589793
operations:
- function: push
type: f64
value: 3.141592653589793
stack_final:
- type: f64
value: 3.141592653589793
- name: Float f32 Pi Approximate
code: 3.1415927:f32
tokens:
- type: f32
value: 3.1415927
operations:
- function: push
type: f32
value: 3.1415927
stack_final:
- type: f32
value: 3.1415927
- name: Float Default Euler Approximate
code: '2.718281828459045'
tokens:
- type: f64
value: 2.718281828459045
operations:
- function: push
type: f64
value: 2.718281828459045
stack_final:
- type: f64
value: 2.718281828459045
- name: Float f32 Euler Approximate
code: 2.7182817:f32
tokens:
- type: f32
value: 2.7182817
operations:
- function: push
type: f32
value: 2.7182817
stack_final:
- type: f32
value: 2.7182817
- name: Float Default Golden Ratio
code: '1.618033988749895'
tokens:
- type: f64
value: 1.618033988749895
operations:
- function: push
type: f64
value: 1.618033988749895
stack_final:
- type: f64
value: 1.618033988749895
- name: Float Default Sqrt2
code: '1.4142135623730951'
tokens:
- type: f64
value: 1.4142135623730951
operations:
- function: push
type: f64
value: 1.4142135623730951
stack_final:
- type: f64
value: 1.4142135623730951
- name: Float Default Positive Zero
code: '0.0'
tokens:
- type: f64
value: 0.0
operations:
- function: push
type: f64
value: 0.0
stack_final:
- type: f64
value: 0.0
- name: Float Default Negative Zero
code: '-0.0'
tokens:
- type: f64
value: -0.0
operations:
- function: push
type: f64
value: -0.0
stack_final:
- type: f64
value: -0.0
- name: Float f32 Positive Zero
code: 0.0:f32
tokens:
- type: f32
value: 0.0
operations:
- function: push
type: f32
value: 0.0
stack_final:
- type: f32
value: 0.0
- name: Float f32 Negative Zero
code: -0.0:f32
tokens:
- type: f32
value: -0.0
operations:
- function: push
type: f32
value: -0.0
stack_final:
- type: f32
value: -0.0
- name: Char Simple Letter A
code: '''A'''
tokens:
- type: char
value: A
operations:
- function: push
type: char
value: A
stack_final:
- type: char
value: A
- name: Char Simple Letter a
code: '''a'''
tokens:
- type: char
value: a
operations:
- function: push
type: char
value: a
stack_final:
- type: char
value: a
- name: Char Simple Letter Z
code: '''Z'''
tokens:
- type: char
value: Z
operations:
- function: push
type: char
value: Z
stack_final:
- type: char
value: Z
- name: Char Simple Letter z
code: '''z'''
tokens:
- type: char
value: z
operations:
- function: push
type: char
value: z
stack_final:
- type: char
value: z
- name: Char Digit 0
code: '''0'''
tokens:
- type: char
value: '0'
operations:
- function: push
type: char
value: '0'
stack_final:
- type: char
value: '0'
- name: Char Digit 5
code: '''5'''
tokens:
- type: char
value: '5'
operations:
- function: push
type: char
value: '5'
stack_final:
- type: char
value: '5'
- name: Char Digit 9
code: '''9'''
tokens:
- type: char
value: '9'
operations:
- function: push
type: char
value: '9'
stack_final:
- type: char
value: '9'
- name: Char Space
code: ''' '''
tokens:
- type: char
value: ' '
operations:
- function: push
type: char
value: ' '
stack_final:
- type: char
value: ' '
- name: Char Exclamation
code: '''!'''
tokens:
- type: char
value: '!'
operations:
- function: push
type: char
value: '!'
stack_final:
- type: char
value: '!'
- name: Char Question Mark
code: '''?'''
tokens:
- type: char
value: '?'
operations:
- function: push
type: char
value: '?'
stack_final:
- type: char
value: '?'
- name: Char Period
code: '''.'''
tokens:
- type: char
value: .
operations:
- function: push
type: char
value: .
stack_final:
- type: char
value: .
- name: Char Comma
code: ''','''
tokens:
- type: char
value: ','
operations:
- function: push
type: char
value: ','
stack_final:
- type: char
value: ','
- name: Char Semicolon
code: ''';'''
tokens:
- type: char
value: ;
operations:
- function: push
type: char
value: ;
stack_final:
- type: char
value: ;
- name: Char Colon
code: ''':'''
tokens:
- type: char
value: ':'
operations:
- function: push
type: char
value: ':'
stack_final:
- type: char
value: ':'
- name: Char Plus
code: '''+'''
tokens:
- type: char
value: +
operations:
- function: push
type: char
value: +
stack_final:
- type: char
value: +
- name: Char Minus
code: '''-'''
tokens:
- type: char
value: '-'
operations:
- function: push
type: char
value: '-'
stack_final:
- type: char
value: '-'
- name: Char Asterisk
code: '''*'''
tokens:
- type: char
value: '*'
operations:
- function: push
type: char
value: '*'
stack_final:
- type: char
value: '*'
- name: Char Slash
code: '''/'''
tokens:
- type: char
value: /
operations:
- function: push
type: char
value: /
stack_final:
- type: char
value: /
- name: Char Equals
code: '''='''
tokens:
- type: char
value: '='
operations:
- function: push
type: char
value: '='
stack_final:
- type: char
value: '='
- name: Char Less Than
code: '''<'''
tokens:
- type: char
value: <
operations:
- function: push
type: char
value: <
stack_final:
- type: char
value: <
- name: Char Greater Than
code: '''>'''
tokens:
- type: char
value: '>'
operations:
- function: push
type: char
value: '>'
stack_final:
- type: char
value: '>'
- name: Char Left Paren
code: '''('''
tokens:
- type: char
value: (
operations:
- function: push
type: char
value: (
stack_final:
- type: char
value: (
- name: Char Right Paren
code: ''')'''
tokens:
- type: char
value: )
operations:
- function: push
type: char
value: )
stack_final:
- type: char
value: )
- name: Char Left Bracket
code: '''['''
tokens:
- type: char
value: '['
operations:
- function: push
type: char
value: '['
stack_final:
- type: char
value: '['
- name: Char Right Bracket
code: ''']'''
tokens:
- type: char
value: ']'
operations:
- function: push
type: char
value: ']'
stack_final:
- type: char
value: ']'
- name: Char Left Brace
code: '''{'''
tokens:
- type: char
value: '{'
operations:
- function: push
type: char
value: '{'
stack_final:
- type: char
value: '{'
- name: Char Right Brace
code: '''}'''
tokens:
- type: char
value: '}'
operations:
- function: push
type: char
value: '}'
stack_final:
- type: char
value: '}'
- name: Char Escape Single quote
code: '''\\'''''
tokens:
- type: char
value: ''''
operations:
- function: push
type: char
value: ''''
stack_final:
- type: char
value: ''''
- name: Char Escape Tab
code: '''\\t'''
tokens:
- type: char
value: "\t"
operations:
- function: push
type: char
value: "\t"
stack_final:
- type: char
value: "\t"
- name: Char Escape Carriage return
code: '''\\r'''
tokens:
- type: char
value: "\r"
operations:
- function: push
type: char
value: "\r"
stack_final:
- type: char
value: "\r"
- name: Char Escape Backslash
code: '''\\\\'''
tokens:
- type: char
value: \
operations:
- function: push
type: char
value: \
stack_final:
- type: char
value: \
- name: Char Escape Newline
code: '''\\n'''
tokens:
- type: char
value: '
'
operations:
- function: push
type: char
value: '
'
stack_final:
- type: char
value: '
'
- name: Char Escape Null character
code: '''\\0'''
tokens:
- type: char
value: "\0"
operations:
- function: push
type: char
value: "\0"
stack_final:
- type: char
value: "\0"
- name: Char Hex Lowercase A
code: '''\\x61'''
tokens:
- type: char
value: a
operations:
- function: push
type: char
value: a
stack_final:
- type: char
value: a
- name: Char Hex Uppercase A
code: '''\\x41'''
tokens:
- type: char
value: A
operations:
- function: push
type: char
value: A
stack_final:
- type: char
value: A
- name: Char Hex Space
code: '''\\x20'''
tokens:
- type: char
value: ' '
operations:
- function: push
type: char
value: ' '
stack_final:
- type: char
value: ' '
- name: Char Hex Tab
code: '''\\x09'''
tokens:
- type: char
value: "\t"
operations:
- function: push
type: char
value: "\t"
stack_final:
- type: char
value: "\t"
- name: Char Hex Newline
code: '''\\x0A'''
tokens:
- type: char
value: '
'
operations:
- function: push
type: char
value: '
'
stack_final:
- type: char
value: '
'
- name: Char Hex Max ASCII
code: '''\\x7F'''
tokens:
- type: char
value: "\x7F"
operations:
- function: push
type: char
value: "\x7F"
stack_final:
- type: char
value: "\x7F"
- name: Char With Leading Whitespace
code: ' ''A'''
tokens:
- type: char
value: A
operations:
- function: push
type: char
value: A
stack_final:
- type: char
value: A
- name: Char With Trailing Whitespace
code: '''A'' '
tokens:
- type: char
value: A
operations:
- function: push
type: char
value: A
stack_final:
- type: char
value: A
- name: Char With Both Whitespace
code: ' ''A'' '
tokens:
- type: char
value: A
operations:
- function: push
type: char
value: A
stack_final:
- type: char
value: A
- name: Char Tab Before
code: \t'B'
tokens:
- type: char
value: B
operations:
- function: push
type: char
value: B
stack_final:
- type: char
value: B
- name: Char Newline Before
code: \n'C'
tokens:
- type: char
value: C
operations:
- function: push
type: char
value: C
stack_final:
- type: char
value: C
- name: Char Empty Literal
code: ''''''
tokens:
- type: error
value: 'Invalid character literal: empty character literal.'
- name: Char Multiple Characters
code: '''AB'''
tokens:
- type: error
value: 'Invalid character literal: unexpected ''B'' in character.'
- name: Char Unclosed Quote
code: '''A'
tokens:
- type: error
value: 'Invalid character literal: unclosed character literal.'
- name: Char Unescaped Newline
code: '''\n'''
tokens:
- type: error
value: 'Invalid character literal: unclosed character literal.'
- name: Char Invalid Escape
code: '''\\q'''
tokens:
- type: error
value: 'Invalid character literal: unknown escape sequence ''\\q''.'
- name: Char Hex Escape Too Short
code: '''\\x4'''
tokens:
- type: error
value: 'Invalid character literal: hexadecimal escape must have exactly 2 digits.'
- name: Char Hex Escape Too Long
code: '''\\x414'''
tokens:
- type: error
value: 'Invalid character literal: hexadecimal escape must have exactly 2 digits.'
- name: Char Hex Invalid Digit
code: '''\\xGG'''
tokens:
- type: error
value: 'Invalid character literal: invalid hexadecimal digit ''G''.'
- name: Char ASCII Control SOH
code: '''\\x01'''
tokens:
- type: char
value: "\x01"
operations:
- function: push
type: char
value: "\x01"
stack_final:
- type: char
value: "\x01"
- name: Char ASCII Control BEL
code: '''\\x07'''
tokens:
- type: char
value: "\a"
operations:
- function: push
type: char
value: "\a"
stack_final:
- type: char
value: "\a"
- name: Char ASCII Control ESC
code: '''\\x1B'''
tokens:
- type: char
value: "\e"
operations:
- function: push
type: char
value: "\e"
stack_final:
- type: char
value: "\e"
- name: Char ASCII Control DEL
code: '''\\x7F'''
tokens:
- type: char
value: "\x7F"
operations:
- function: push
type: char
value: "\x7F"
stack_final:
- type: char
value: "\x7F"
- name: Char Extended ASCII Lower
code: '''\\x80'''
tokens:
- type: char
value: "\x80"
operations:
- function: push
type: char
value: "\x80"
stack_final:
- type: char
value: "\x80"
- name: Char Extended ASCII Upper
code: '''\\xFF'''
tokens:
- type: char
value: "\xFF"
operations:
- function: push
type: char
value: "\xFF"
stack_final:
- type: char
value: "\xFF"
- name: Char Hex Lowercase x
code: '''\\x41'''
tokens:
- type: char
value: A
operations:
- function: push
type: char
value: A
stack_final:
- type: char
value: A
- name: Char Hex Digits Uppercase
code: '''\\xFF'''
tokens:
- type: char
value: "\xFF"
operations:
- function: push
type: char
value: "\xFF"
stack_final:
- type: char
value: "\xFF"
- name: Char Hex Digits Lowercase
code: '''\\xff'''
tokens:
- type: char
value: "\xFF"
operations:
- function: push
type: char
value: "\xFF"
stack_final:
- type: char
value: "\xFF"
- name: Char Hex Digits Mixed
code: '''\\xAb'''
tokens:
- type: char
value: "\xAB"
operations:
- function: push
type: char
value: "\xAB"
stack_final:
- type: char
value: "\xAB"