opcodes[]: global scope global { global scope implicit__testprocs { } type utf8str: type ucs1str: type ucs2str: type ucs4str: global scope vt100 { } void test ( int32 line, int32 a, int32 b ) { var int32 line var int32 a var int32 b lvar+4+0 "a" ( -- int32& ) peek ( int32& -- int32 ) lvar+0+4 "b" ( -- int32& ) peek ( int32& -- int32 ) == ( int32, int32 -- bool ) !! ( uint32 -- bool ) jp_z ( bool -- ) -> L995 "." ( -- utf8str¢ ) print ( utf8str¢ ) jp ( -- ) -> L993 L995: " " ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) lvar+8+8 "line" ( -- int32& ) peek ( int32& -- int32 ) numstr ( int32 -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) ": failed: \"" ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) lvar+4+8 "a" ( -- int32& ) peek ( int32& -- int32 ) numstr ( int32 -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) "\" != \"" ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) lvar+0+8 "b" ( -- int32& ) peek ( int32& -- int32 ) numstr ( int32 -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) "\"\n" ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) print ( utf8str ) gvar "errors" ( -- int32& ) ++ ( int32& -- ) L993: drop ( int32 -- ) drop ( int32 -- ) drop ( int32 -- ) } void test ( int32 line, int64 a, int64 b ) { var int32 line var int64 a var int64 b lvar+8+0 "a" ( -- int64& ) peek ( int64& -- int64 ) lvar+0+8 "b" ( -- int64& ) peek ( int64& -- int64 ) == ( int64, int64 -- bool ) !! ( uint32 -- bool ) jp_z ( bool -- ) -> L999 "." ( -- utf8str¢ ) print ( utf8str¢ ) jp ( -- ) -> L997 L999: " " ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) lvar+16+8 "line" ( -- int32& ) peek ( int32& -- int32 ) numstr ( int32 -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) ": failed: \"" ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) lvar+8+8 "a" ( -- int64& ) peek ( int64& -- int64 ) numstr ( int64 -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) "\" != \"" ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) lvar+0+8 "b" ( -- int64& ) peek ( int64& -- int64 ) numstr ( int64 -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) "\"\n" ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) print ( utf8str ) gvar "errors" ( -- int32& ) ++ ( int32& -- ) L997: drop ( int64 -- ) drop ( int64 -- ) drop ( int32 -- ) } void test ( int32 line, int16 a, int16 b ) { var int32 line var int16 a var int16 b lvar+4+0 "a" ( -- int16& ) peek ( int16& -- int16 ) lvar+0+4 "b" ( -- int16& ) peek ( int16& -- int16 ) == ( int16, int16 -- bool ) !! ( uint32 -- bool ) jp_z ( bool -- ) -> L1003 "." ( -- utf8str¢ ) print ( utf8str¢ ) jp ( -- ) -> L1001 L1003: " " ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) lvar+8+8 "line" ( -- int32& ) peek ( int32& -- int32 ) numstr ( int32 -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) ": failed: \"" ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) lvar+4+8 "a" ( -- int16& ) peek ( int16& -- int16 ) numstr ( int16 -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) "\" != \"" ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) lvar+0+8 "b" ( -- int16& ) peek ( int16& -- int16 ) numstr ( int16 -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) "\"\n" ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) print ( utf8str ) gvar "errors" ( -- int32& ) ++ ( int32& -- ) L1001: drop ( int16 -- ) drop ( int16 -- ) drop ( int32 -- ) } void test ( int32 line, int8 a, int8 b ) { var int32 line var int8 a var int8 b lvar+4+0 "a" ( -- int8& ) peek ( int8& -- int8 ) lvar+0+4 "b" ( -- int8& ) peek ( int8& -- int8 ) == ( int8, int8 -- bool ) !! ( uint32 -- bool ) jp_z ( bool -- ) -> L1007 "." ( -- utf8str¢ ) print ( utf8str¢ ) jp ( -- ) -> L1005 L1007: " " ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) lvar+8+8 "line" ( -- int32& ) peek ( int32& -- int32 ) numstr ( int32 -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) ": failed: \"" ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) lvar+4+8 "a" ( -- int8& ) peek ( int8& -- int8 ) numstr ( int8 -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) "\" != \"" ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) lvar+0+8 "b" ( -- int8& ) peek ( int8& -- int8 ) numstr ( int8 -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) "\"\n" ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) print ( utf8str ) gvar "errors" ( -- int32& ) ++ ( int32& -- ) L1005: drop ( int8 -- ) drop ( int8 -- ) drop ( int32 -- ) } void test ( int32 line, int32 a, uint32 b ) { var int32 line var int32 a var uint32 b lvar+8+0 "line" ( -- int32& ) peek ( int32& -- int32 ) call show_signedness_error ( int32 ) drop ( uint32 -- ) drop ( int32 -- ) drop ( int32 -- ) } void test ( int32 line, int64 a, uint64 b ) { var int32 line var int64 a var uint64 b lvar+16+0 "line" ( -- int32& ) peek ( int32& -- int32 ) call show_signedness_error ( int32 ) drop ( uint64 -- ) drop ( int64 -- ) drop ( int32 -- ) } void test ( int32 line, int16 a, uint16 b ) { var int32 line var int16 a var uint16 b lvar+8+0 "line" ( -- int32& ) peek ( int32& -- int32 ) call show_signedness_error ( int32 ) drop ( uint16 -- ) drop ( int16 -- ) drop ( int32 -- ) } void test ( int32 line, int8 a, uint8 b ) { var int32 line var int8 a var uint8 b lvar+8+0 "line" ( -- int32& ) peek ( int32& -- int32 ) call show_signedness_error ( int32 ) drop ( uint8 -- ) drop ( int8 -- ) drop ( int32 -- ) } void test ( int32 line, float64 a, float64 b ) { var int32 line var float64 a var float64 b lvar+8+0 "a" ( -- float64& ) peek ( float64& -- float64 ) lvar+0+8 "b" ( -- float64& ) peek ( float64& -- float64 ) == ( float64, float64 -- bool ) !! ( uint32 -- bool ) jp_z ( bool -- ) -> L1011 "." ( -- utf8str¢ ) print ( utf8str¢ ) jp ( -- ) -> L1009 L1011: lvar+0+0 "b" ( -- float64& ) peek ( float64& -- float64 ) lvar+0+8 "b" ( -- float64& ) peek ( float64& -- float64 ) != ( float64, float64 -- bool ) !! ( uint32 -- bool ) jp_z ( bool -- ) -> L1013 lvar+8+0 "a" ( -- float64& ) peek ( float64& -- float64 ) lvar+8+8 "a" ( -- float64& ) peek ( float64& -- float64 ) != ( float64, float64 -- bool ) !! ( uint32 -- bool ) jp_z ( bool -- ) -> L1010 "." ( -- utf8str¢ ) print ( utf8str¢ ) jp ( -- ) -> L1009 L1013: lvar+0+0 "b" ( -- float64& ) peek ( float64& -- float64 ) 0 ( -- float64 ) != ( float64, float64 -- bool ) !! ( uint32 -- bool ) jp_z ( bool -- ) -> L1017 lvar+8+0 "a" ( -- float64& ) peek ( float64& -- float64 ) lvar+0+8 "b" ( -- float64& ) peek ( float64& -- float64 ) / ( float64, float64 -- float64 ) 0.99998 ( -- float64 ) > ( float64, float64 -- bool ) !! ( uint32 -- bool ) and0 ( bool -- ) -> L1020 lvar+8+0 "a" ( -- float64& ) peek ( float64& -- float64 ) lvar+0+8 "b" ( -- float64& ) peek ( float64& -- float64 ) / ( float64, float64 -- float64 ) 1.00002 ( -- float64 ) < ( float64, float64 -- bool ) !! ( uint32 -- bool ) L1020: !! ( uint32 -- bool ) jp_z ( bool -- ) -> L1010 "!" ( -- utf8str¢ ) print ( utf8str¢ ) jp ( -- ) -> L1009 L1017: lvar+8+0 "a" ( -- float64& ) peek ( float64& -- float64 ) -2e-05 ( -- float64 ) > ( float64, float64 -- bool ) !! ( uint32 -- bool ) and0 ( bool -- ) -> L1023 lvar+8+0 "a" ( -- float64& ) peek ( float64& -- float64 ) 2e-05 ( -- float64 ) < ( float64, float64 -- bool ) !! ( uint32 -- bool ) L1023: !! ( uint32 -- bool ) jp_z ( bool -- ) -> L1010 "o" ( -- utf8str¢ ) print ( utf8str¢ ) jp ( -- ) -> L1009 L1010: " " ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) lvar+16+8 "line" ( -- int32& ) peek ( int32& -- int32 ) numstr ( int32 -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) ": failed: \"" ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) lvar+8+8 "a" ( -- float64& ) peek ( float64& -- float64 ) numstr ( float64 -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) "\" != \"" ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) lvar+0+8 "b" ( -- float64& ) peek ( float64& -- float64 ) numstr ( float64 -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) "\"\n" ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) print ( utf8str ) gvar "errors" ( -- int32& ) ++ ( int32& -- ) L1009: drop ( float64 -- ) drop ( float64 -- ) drop ( int32 -- ) } void test ( int32 line, float32 a, float32 b ) { var int32 line var float32 a var float32 b lvar+4+0 "a" ( -- float32& ) peek ( float32& -- float32 ) lvar+0+4 "b" ( -- float32& ) peek ( float32& -- float32 ) == ( float32, float32 -- bool ) !! ( uint32 -- bool ) jp_z ( bool -- ) -> L1026 "." ( -- utf8str¢ ) print ( utf8str¢ ) jp ( -- ) -> L1024 L1026: lvar+0+0 "b" ( -- float32& ) peek ( float32& -- float32 ) lvar+0+4 "b" ( -- float32& ) peek ( float32& -- float32 ) != ( float32, float32 -- bool ) !! ( uint32 -- bool ) jp_z ( bool -- ) -> L1028 lvar+4+0 "a" ( -- float32& ) peek ( float32& -- float32 ) lvar+4+4 "a" ( -- float32& ) peek ( float32& -- float32 ) != ( float32, float32 -- bool ) !! ( uint32 -- bool ) jp_z ( bool -- ) -> L1025 "." ( -- utf8str¢ ) print ( utf8str¢ ) jp ( -- ) -> L1024 L1028: lvar+0+0 "b" ( -- float32& ) peek ( float32& -- float32 ) 0 ( -- float32 ) != ( float32, float32 -- bool ) !! ( uint32 -- bool ) jp_z ( bool -- ) -> L1032 lvar+4+0 "a" ( -- float32& ) peek ( float32& -- float32 ) lvar+0+4 "b" ( -- float32& ) peek ( float32& -- float32 ) / ( float32, float32 -- float32 ) cast ( float32 -- float64 ) 0.99998 ( -- float64 ) > ( float64, float64 -- bool ) !! ( uint32 -- bool ) and0 ( bool -- ) -> L1035 lvar+4+0 "a" ( -- float32& ) peek ( float32& -- float32 ) lvar+0+4 "b" ( -- float32& ) peek ( float32& -- float32 ) / ( float32, float32 -- float32 ) cast ( float32 -- float64 ) 1.00002 ( -- float64 ) < ( float64, float64 -- bool ) !! ( uint32 -- bool ) L1035: !! ( uint32 -- bool ) jp_z ( bool -- ) -> L1025 "!" ( -- utf8str¢ ) print ( utf8str¢ ) jp ( -- ) -> L1024 L1032: lvar+4+0 "a" ( -- float32& ) peek ( float32& -- float32 ) cast ( float32 -- float64 ) -2e-05 ( -- float64 ) > ( float64, float64 -- bool ) !! ( uint32 -- bool ) and0 ( bool -- ) -> L1038 lvar+4+0 "a" ( -- float32& ) peek ( float32& -- float32 ) cast ( float32 -- float64 ) 2e-05 ( -- float64 ) < ( float64, float64 -- bool ) !! ( uint32 -- bool ) L1038: !! ( uint32 -- bool ) jp_z ( bool -- ) -> L1025 "o" ( -- utf8str¢ ) print ( utf8str¢ ) jp ( -- ) -> L1024 L1025: " " ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) lvar+8+8 "line" ( -- int32& ) peek ( int32& -- int32 ) numstr ( int32 -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) ": failed: \"" ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) lvar+4+8 "a" ( -- float32& ) peek ( float32& -- float32 ) numstr ( float32 -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) "\" != \"" ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) lvar+0+8 "b" ( -- float32& ) peek ( float32& -- float32 ) numstr ( float32 -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) "\"\n" ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) print ( utf8str ) gvar "errors" ( -- int32& ) ++ ( int32& -- ) L1024: drop ( float32 -- ) drop ( float32 -- ) drop ( int32 -- ) } void test ( int32 line, float128 a, float128 b ) { var int32 line var float128 a var float128 b lvar+16+0 "a" ( -- float128& ) peek ( float128& -- float128 ) lvar+0+16 "b" ( -- float128& ) peek ( float128& -- float128 ) == ( float128, float128 -- bool ) !! ( uint32 -- bool ) jp_z ( bool -- ) -> L1041 "." ( -- utf8str¢ ) print ( utf8str¢ ) jp ( -- ) -> L1039 L1041: lvar+0+0 "b" ( -- float128& ) peek ( float128& -- float128 ) lvar+0+16 "b" ( -- float128& ) peek ( float128& -- float128 ) != ( float128, float128 -- bool ) !! ( uint32 -- bool ) jp_z ( bool -- ) -> L1043 lvar+16+0 "a" ( -- float128& ) peek ( float128& -- float128 ) lvar+16+16 "a" ( -- float128& ) peek ( float128& -- float128 ) != ( float128, float128 -- bool ) !! ( uint32 -- bool ) jp_z ( bool -- ) -> L1040 "." ( -- utf8str¢ ) print ( utf8str¢ ) jp ( -- ) -> L1039 L1043: lvar+0+0 "b" ( -- float128& ) peek ( float128& -- float128 ) 0 ( -- float128 ) != ( float128, float128 -- bool ) !! ( uint32 -- bool ) jp_z ( bool -- ) -> L1047 lvar+16+0 "a" ( -- float128& ) peek ( float128& -- float128 ) lvar+0+16 "b" ( -- float128& ) peek ( float128& -- float128 ) / ( float128, float128 -- float128 ) 0.9999800000000000910205 ( -- float128 ) > ( float128, float128 -- bool ) !! ( uint32 -- bool ) and0 ( bool -- ) -> L1050 lvar+16+0 "a" ( -- float128& ) peek ( float128& -- float128 ) lvar+0+16 "b" ( -- float128& ) peek ( float128& -- float128 ) / ( float128, float128 -- float128 ) 1.000020000000000131024 ( -- float128 ) < ( float128, float128 -- bool ) !! ( uint32 -- bool ) L1050: !! ( uint32 -- bool ) jp_z ( bool -- ) -> L1040 "!" ( -- utf8str¢ ) print ( utf8str¢ ) jp ( -- ) -> L1039 L1047: lvar+16+0 "a" ( -- float128& ) peek ( float128& -- float128 ) -2.000000000000000163606e-05 ( -- float128 ) > ( float128, float128 -- bool ) !! ( uint32 -- bool ) and0 ( bool -- ) -> L1053 lvar+16+0 "a" ( -- float128& ) peek ( float128& -- float128 ) 2.000000000000000163606e-05 ( -- float128 ) < ( float128, float128 -- bool ) !! ( uint32 -- bool ) L1053: !! ( uint32 -- bool ) jp_z ( bool -- ) -> L1040 "o" ( -- utf8str¢ ) print ( utf8str¢ ) jp ( -- ) -> L1039 L1040: " " ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) lvar+32+8 "line" ( -- int32& ) peek ( int32& -- int32 ) numstr ( int32 -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) ": failed: \"" ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) lvar+16+8 "a" ( -- float128& ) peek ( float128& -- float128 ) numstr ( float128 -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) "\" != \"" ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) lvar+0+8 "b" ( -- float128& ) peek ( float128& -- float128 ) numstr ( float128 -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) "\"\n" ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) print ( utf8str ) gvar "errors" ( -- int32& ) ++ ( int32& -- ) L1039: drop ( float128 -- ) drop ( float128 -- ) drop ( int32 -- ) } void test ( int32 line, utf8str¢ a, utf8str¢ b ) { var int32 line var utf8str¢ a var utf8str¢ b lvar+8+0 "a" ( -- utf8str¢& ) peek ( utf8str¢& -- utf8str¢ ) lvar+0+8 "b" ( -- utf8str¢& ) peek ( utf8str¢& -- utf8str¢ ) eqstr ( utf8str¢, utf8str¢ -- bool ) !! ( uint32 -- bool ) jp_z ( bool -- ) -> L1056 "." ( -- utf8str¢ ) print ( utf8str¢ ) jp ( -- ) -> L1054 L1056: " " ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) lvar+16+8 "line" ( -- int32& ) peek ( int32& -- int32 ) numstr ( int32 -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) ": failed: \"" ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) lvar+8+8 "a" ( -- utf8str¢& ) peek ( utf8str¢& -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) "\" != \"" ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) lvar+0+8 "b" ( -- utf8str¢& ) peek ( utf8str¢& -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) "\"\n" ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) print ( utf8str ) gvar "errors" ( -- int32& ) ++ ( int32& -- ) L1054: drop ( utf8str¢ -- ) drop ( utf8str¢ -- ) drop ( int32 -- ) } void show_signedness_error ( int32 line ) { var int32 line "\n" ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) lvar+0+8 "line" ( -- int32& ) peek ( int32& -- int32 ) numstr ( int32 -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) ": failed: signedness error " ( -- utf8str¢ ) retain ( utf8str¢ -- utf8str ) catstr ( utf8str, utf8str -- utf8str ) print ( utf8str ) gvar "errors" ( -- int32& ) ++ ( int32& -- ) drop ( int32 -- ) } }