Skip to content

Assertion literal_index >= PARSER_REGISTER_START || !has_context || scanner_literal_is_created (context_p, literal_index) in parser_parse_for_statement_start #3751

@renatahodovan

Description

@renatahodovan
JerryScript revision

bd1c4df

Build platform

Linux-4.15.0-88-generic-x86_64-with-Ubuntu-18.04-bionic

Build steps
./tools/build.py --clean --debug --compile-flag=-fsanitize=address \
--compile-flag=-m32 --compile-flag=-fno-omit-frame-pointer \
--compile-flag=-fno-common --compile-flag=-g \
--strip=off --system-allocator=on --logging=on \
--linker-flag=-fuse-ld=gold --error-messages=on --profile=es2015-subset
Test case
for (let i in {
        id_0: 1
    })

    (function() {
            i
Output
ICE: Assertion 'literal_index >= PARSER_REGISTER_START || !has_context || scanner_literal_is_created (context_p, literal_index)' failed at jerryscript/jerry-core/parser/js/js-parser-statm.c(parser_parse_for_statement_start):1380.
Error: ERR_FAILED_INTERNAL_ASSERTION
ASAN:DEADLYSIGNAL
=================================================================
==18934==ERROR: AddressSanitizer: ABRT on unknown address 0x000049f6 (pc 0xf7fc7079 bp 0xff8e4bec sp 0xff8e4bd0 T0)
    #0 0xf7fc7078  (linux-gate.so.1+0x1078)
    #1 0xf7fc7078  (linux-gate.so.1+0x1078)
    #2 0xf77ee831 in raise (/lib/i386-linux-gnu/libc.so.6+0x2d831)
    #3 0xf77efcc0 in abort (/lib/i386-linux-gnu/libc.so.6+0x2ecc0)
    #4 0x566443a0 in jerry_port_fatal jerryscript/jerry-port/default/default-fatal.c:30
    #5 0x566fb4e7 in jerry_fatal jerryscript/jerry-core/jrt/jrt-fatals.c:63
    #6 0x566fb528 in jerry_assert_fail jerryscript/jerry-core/jrt/jrt-fatals.c:87
    #7 0x5666f1fe in parser_parse_for_statement_start jerryscript/jerry-core/parser/js/js-parser-statm.c:1378
    #8 0x566767c9 in parser_parse_statements jerryscript/jerry-core/parser/js/js-parser-statm.c:2897
    #9 0x5670a668 in parser_parse_source jerryscript/jerry-core/parser/js/js-parser.c:2184
    #10 0x5670dcb5 in parser_parse_script jerryscript/jerry-core/parser/js/js-parser.c:2697
    #11 0x5675f17d in jerry_parse jerryscript/jerry-core/api/jerry.c:448
    #12 0x5675bd8d in main jerryscript/jerry-main/main-unix.c:750
    #13 0xf77d9e80 in __libc_start_main (/lib/i386-linux-gnu/libc.so.6+0x18e80)
    #14 0x56637290  (jerryscript/build_gcc_asan_es2015/bin/jerry+0x1a290)

AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: ABRT (linux-gate.so.1+0x1078) 
==18934==ABORTING

Found by Fuzzinator with grammarinator.

Metadata

Metadata

Assignees

Labels

bugUndesired behaviour

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions