Skip to content

Assertion '(c & LIT_UTF8_3_BYTE_MASK) == LIT_UTF8_3_BYTE_MARKER' in lit_read_code_unit_from_utf8 #4129

@ossy-szeged

Description

@ossy-szeged
JerryScript revision

0c15430
(latest master - 2020.08.11.)

Build platform

Ubuntu 18.04.5 LTS (Linux 4.15.0-112-generic x86_64)

Build steps

tools/build.py --debug --logging=on --error-messages=on --line-info=on

Test case

official test262-esnext test case: built-ins/JSON/stringify/value-string-escape-unicode.js

echo "'use strict';" >test.js
cat tests/test262/esnext/harness/sta.js tests/test262/esnext/harness/assert.js tests/test262/esnext/test/built-ins/JSON/stringify/value-string-escape-unicode.js >>test.js

$build/bin/jerry test.js

Note: This test fails only on debug build and only in strict mode. After changing the test, eg commenting sub-cases, the assert goes away.

Output
ICE: Assertion '(c & LIT_UTF8_3_BYTE_MASK) == LIT_UTF8_3_BYTE_MARKER' failed at /home/oszi/jerryscript/jerry-core/lit/lit-strings.c(lit_read_code_unit_from_utf8):447.
Error: ERR_FAILED_INTERNAL_ASSERTION
Backtrace
#0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
#1  0x00007ffff7a248b1 in __GI_abort () at abort.c:79
#2  0x000055555555f5e4 in jerry_port_fatal (code=ERR_FAILED_INTERNAL_ASSERTION) at /home/oszi/jerryscript/jerry-port/default/default-fatal.c:30
#3  0x00005555555af128 in jerry_fatal (code=ERR_FAILED_INTERNAL_ASSERTION) at /home/oszi/jerryscript/jerry-core/jrt/jrt-fatals.c:63
#4  0x00005555555af17a in jerry_assert_fail (assertion=0x555555622058 "(c & LIT_UTF8_3_BYTE_MASK) == LIT_UTF8_3_BYTE_MARKER", file=0x555555621f80 "/home/oszi/jerryscript/jerry-core/lit/lit-strings.c", function=0x55555560d570 <__func__.2773.lto_priv.581> "lit_read_code_unit_from_utf8", line=447) at /home/oszi/jerryscript/jerry-core/jrt/jrt-fatals.c:87
#5  0x00005555555b1826 in lit_read_code_unit_from_utf8 (buf_p=0x55555584514a <jerry_global_heap+3746> "\206\355\240\264\355\274\250\001\024\002*\002-\002`\017", code_point=0x7fffffffdb4e) at /home/oszi/jerryscript/jerry-core/lit/lit-strings.c:447
#6  0x00005555555b1a31 in lit_cesu8_peek_next (buf_p=0x55555584514a <jerry_global_heap+3746> "\206\355\240\264\355\274\250\001\024\002*\002-\002`\017") at /home/oszi/jerryscript/jerry-core/lit/lit-strings.c:522
#7  0x00005555555ee666 in ecma_builtin_json_quote (builder_p=0x7fffffffdd18, string_p=0x555555845138 <jerry_global_heap+3728>) at /home/oszi/jerryscript/jerry-core/ecma/builtin-objects/ecma-builtin-json.c:861
#8  0x00005555555ef2c2 in ecma_builtin_json_serialize_property (context_p=0x7fffffffdcf0, holder_p=0x555555844998 <jerry_global_heap+1776>, key_p=0xd) at /home/oszi/jerryscript/jerry-core/ecma/builtin-objects/ecma-builtin-json.c:1326
#9  0x00005555555ef566 in ecma_builtin_json_str_helper (context_p=0x7fffffffdcf0, arg1=3729) at /home/oszi/jerryscript/jerry-core/ecma/builtin-objects/ecma-builtin-json.c:1419
#10 0x00005555555efd1a in ecma_builtin_json_stringify (this_arg=1259, arg1=3729, arg2=72, arg3=72) at /home/oszi/jerryscript/jerry-core/ecma/builtin-objects/ecma-builtin-json.c:1694
#11 0x00005555555ed390 in ecma_builtin_json_dispatch_routine (builtin_routine_id=91, this_arg_value=1259, arguments_list=0x7fffffffde24, arguments_number=1) at /home/oszi/jerryscript/jerry-core/ecma/builtin-objects/ecma-builtin-json.inc.h:34
#12 0x00005555555f188c in ecma_builtin_dispatch_routine (func_obj_p=0x5555558447a0 <jerry_global_heap+1272>, this_arg_value=1259, arguments_list_p=0x7fffffffde24, arguments_list_len=1) at /home/oszi/jerryscript/jerry-core/ecma/builtin-objects/ecma-builtins.c:1181
#13 0x00005555555f19c3 in ecma_builtin_dispatch_call (obj_p=0x5555558447a0 <jerry_global_heap+1272>, this_arg_value=1259, arguments_list_p=0x7fffffffe080, arguments_list_len=1) at /home/oszi/jerryscript/jerry-core/ecma/builtin-objects/ecma-builtins.c:1205
#14 0x00005555555deb90 in ecma_op_function_call_simple (func_obj_p=0x5555558447a0 <jerry_global_heap+1272>, this_arg_value=1259, arguments_list_p=0x7fffffffe080, arguments_list_len=1) at /home/oszi/jerryscript/jerry-core/ecma/operations/ecma-function-object.c:846
#15 0x00005555555df2fa in ecma_op_function_call (func_obj_p=0x5555558447a0 <jerry_global_heap+1272>, this_arg_value=1259, arguments_list_p=0x7fffffffe080, arguments_list_len=1) at /home/oszi/jerryscript/jerry-core/ecma/operations/ecma-function-object.c:1143
#16 0x00005555555a4183 in opfunc_call.lto_priv.496 (frame_ctx_p=0x7fffffffe020) at /home/oszi/jerryscript/jerry-core/vm/vm.c:779
#17 0x000055555558bc3d in vm_execute (frame_ctx_p=0x7fffffffe020) at /home/oszi/jerryscript/jerry-core/vm/vm.c:4699
#18 0x000055555558be7e in vm_run (bytecode_header_p=0x555555845700 <jerry_global_heap+5208>, this_binding_value=27, lex_env_p=0x5555558442d8 <jerry_global_heap+48>, arg_list_p=0x0, arg_list_len=0) at /home/oszi/jerryscript/jerry-core/vm/vm.c:4801
#19 0x00005555555a37f4 in vm_run_global (bytecode_p=0x555555845700 <jerry_global_heap+5208>) at /home/oszi/jerryscript/jerry-core/vm/vm.c:340
#20 0x00005555555f8749 in jerry_run (func_val=267) at /home/oszi/jerryscript/jerry-core/api/jerry.c:589
#21 0x00005555555f5cd5 in main (argc=2, argv=0x7fffffffe4c8) at /home/oszi/jerryscript/jerry-main/main-unix.c:123

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions