-
-
Notifications
You must be signed in to change notification settings - Fork 442
Open
Labels
bugSomething isn't workingSomething isn't workinghelp wantedExtra attention is neededExtra attention is needed
Description
Describe the bug
stack-overflow caused by deep call stack
To Reproduce
Input:
+[4446<4444^/ /g/ /g[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[44444 ]
Code:
fn main(){
// let data = input
let mut context = Context::new();
context.eval(data);
}
Output
AddressSanitizer:DEADLYSIGNAL
=================================================================
==11135==ERROR: AddressSanitizer: stack-overflow on address 0x7ffdacb98c40 (pc 0x55d5d74cc4d5 bp 0x7ffdacb9a430 sp 0x7ffdacb98c40 T0)
#0 0x55d5d74cc4d5 in _$LT$boa..syntax..parser..expression..assignment..exponentiation..ExponentiationExpression$u20$as$u20$boa..syntax..parser..TokenParser$LT$R$GT$$GT$::parse::he8285e05f6e8dcc5 /home/xsh/.cargo/registry/src/github.com-1ecc6299db9ec823/Boa-0.11.0/src/syntax/parser/expression/assignment/exponentiation.rs:84
#1 0x55d5d74ca2dd in _$LT$boa..syntax..parser..expression..MultiplicativeExpression$u20$as$u20$boa..syntax..parser..TokenParser$LT$R$GT$$GT$::parse::he0cd2b68c53a87cd /home/xsh/.cargo/registry/src/github.com-1ecc6299db9ec823/Boa-0.11.0/src/syntax/parser/expression/mod.rs:82:27
#2 0x55d5d74c7940 in _$LT$boa..syntax..parser..expression..AdditiveExpression$u20$as$u20$boa..syntax..parser..TokenParser$LT$R$GT$$GT$::parse::h4ae7e82483a469c8 /home/xsh/.cargo/registry/src/github.com-1ecc6299db9ec823/Boa-0.11.0/src/syntax/parser/expression/mod.rs:82:27
#3 0x55d5d74c4e60 in _$LT$boa..syntax..parser..expression..ShiftExpression$u20$as$u20$boa..syntax..parser..TokenParser$LT$R$GT$$GT$::parse::ha501fd0502f572f1 /home/xsh/.cargo/registry/src/github.com-1ecc6299db9ec823/Boa-0.11.0/src/syntax/parser/expression/mod.rs:82:27
#4 0x55d5d74c22b9 in _$LT$boa..syntax..parser..expression..RelationalExpression$u20$as$u20$boa..syntax..parser..TokenParser$LT$R$GT$$GT$::parse::hd7a4e5c59a11bd3a /home/xsh/.cargo/registry/src/github.com-1ecc6299db9ec823/Boa-0.11.0/src/syntax/parser/expression/mod.rs:489:23
#5 0x55d5d74bf510 in _$LT$boa..syntax..parser..expression..EqualityExpression$u20$as$u20$boa..syntax..parser..TokenParser$LT$R$GT$$GT$::parse::h97c54a8a8023a8be /home/xsh/.cargo/registry/src/github.com-1ecc6299db9ec823/Boa-0.11.0/src/syntax/parser/expression/mod.rs:82:27
#6 0x55d5d74bc870 in _$LT$boa..syntax..parser..expression..BitwiseANDExpression$u20$as$u20$boa..syntax..parser..TokenParser$LT$R$GT$$GT$::parse::hfde59933043380d4 /home/xsh/.cargo/registry/src/github.com-1ecc6299db9ec823/Boa-0.11.0/src/syntax/parser/expression/mod.rs:82:27
#7 0x55d5d74b9bd0 in _$LT$boa..syntax..parser..expression..BitwiseXORExpression$u20$as$u20$boa..syntax..parser..TokenParser$LT$R$GT$$GT$::parse::h8751537ad6d7d705 /home/xsh/.cargo/registry/src/github.com-1ecc6299db9ec823/Boa-0.11.0/src/syntax/parser/expression/mod.rs:82:27
#8 0x55d5d74b4a30 in _$LT$boa..syntax..parser..expression..BitwiseORExpression$u20$as$u20$boa..syntax..parser..TokenParser$LT$R$GT$$GT$::parse::h35c650b664ab6de5 /home/xsh/.cargo/registry/src/github.com-1ecc6299db9ec823/Boa-0.11.0/src/syntax/parser/expression/mod.rs:82:27
#9 0x55d5d74ad8d3 in _$LT$boa..syntax..parser..expression..ShortCircuitExpression$u20$as$u20$boa..syntax..parser..TokenParser$LT$R$GT$$GT$::parse::hf51a94a14bb79e42 /home/xsh/.cargo/registry/src/github.com-1ecc6299db9ec823/Boa-0.11.0/src/syntax/parser/expression/mod.rs:218:13
#10 0x55d5d74a8a48 in _$LT$boa..syntax..parser..expression..assignment..conditional..ConditionalExpression$u20$as$u20$boa..syntax..parser..TokenParser$LT$R$GT$$GT$::parse::h99166c692c901a1d /home/xsh/.cargo/registry/src/github.com-1ecc6299db9ec823/Boa-0.11.0/src/syntax/parser/expression/assignment/conditional.rs:68:19
#11 0x55d5d749d6f1 in _$LT$boa..syntax..parser..expression..assignment..AssignmentExpression$u20$as$u20$boa..syntax..parser..TokenParser$LT$R$GT$$GT$::parse::h9a2ebe1a83c64ecf /home/xsh/.cargo/registry/src/github.com-1ecc6299db9ec823/Boa-0.11.0/src/syntax/parser/expression/assignment/mod.rs:175:23
#12 0x55d5d7505ea6 in _$LT$boa..syntax..parser..expression..primary..array_initializer..ArrayLiteral$u20$as$u20$boa..syntax..parser..TokenParser$LT$R$GT$$GT$::parse::hc32dc8a0e162d3dd /home/xsh/.cargo/registry/src/github.com-1ecc6299db9ec823/Boa-0.11.0/src/syntax/parser/expression/primary/array_initializer/mod.rs:85:21
#13 0x55d5d74f966b in _$LT$boa..syntax..parser..expression..primary..PrimaryExpression$u20$as$u20$boa..syntax..parser..TokenParser$LT$R$GT$$GT$::parse::h3e1a03d80d2d930b /home/xsh/.cargo/registry/src/github.com-1ecc6299db9ec823/Boa-0.11.0/src/syntax/parser/expression/primary/mod.rs:97:17
#14 0x55d5d74dd880 in _$LT$boa..syntax..parser..expression..left_hand_side..member..MemberExpression$u20$as$u20$boa..syntax..parser..TokenParser$LT$R$GT$$GT$::parse::he309d1ce71a52f2c /home/xsh/.cargo/registry/src/github.com-1ecc6299db9ec823/Boa-0.11.0/src/syntax/parser/expression/left_hand_side/member.rs:77:13
#15 0x55d5d74dab92 in _$LT$boa..syntax..parser..expression..left_hand_side..LeftHandSideExpression$u20$as$u20$boa..syntax..parser..TokenParser$LT$R$GT$$GT$::parse::h1daeff14ea707989 /home/xsh/.cargo/registry/src/github.com-1ecc6299db9ec823/Boa-0.11.0/src/syntax/parser/expression/left_hand_side/mod.rs:67:19
#16 0x55d5d74d6f7d in _$LT$boa..syntax..parser..expression..update..UpdateExpression$u20$as$u20$boa..syntax..parser..TokenParser$LT$R$GT$$GT$::parse::h778b7144f396b5ef /home/xsh/.cargo/registry/src/github.com-1ecc6299db9ec823/Boa-0.11.0/src/syntax/parser/expression/update.rs:79:19
#17 0x55d5d74cd016 in _$LT$boa..syntax..parser..expression..assignment..exponentiation..ExponentiationExpression$u20$as$u20$boa..syntax..parser..TokenParser$LT$R$GT$$GT$::parse::he8285e05f6e8dcc5 /home/xsh/.cargo/registry/src/github.com-1ecc6299db9ec823/Boa-0.11.0/src/syntax/parser/expression/assignment/exponentiation.rs:91:19
#18 0x55d5d74ca2dd in _$LT$boa..syntax..parser..expression..MultiplicativeExpression$u20$as$u20$boa..syntax..parser..TokenParser$LT$R$GT$$GT$::parse::he0cd2b68c53a87cd /home/xsh/.cargo/registry/src/github.com-1ecc6299db9ec823/Boa-0.11.0/src/syntax/parser/expression/mod.rs:82:27
#19 0x55d5d74c7940 in _$LT$boa..syntax..parser..expression..AdditiveExpression$u20$as$u20$boa..syntax..parser..TokenParser$LT$R$GT$$GT$::parse::h4ae7e82483a469c8 /home/xsh/.cargo/registry/src/github.com-1ecc6299db9ec823/Boa-0.11.0/src/syntax/parser/expression/mod.rs:82:27
#20 0x55d5d74c4e60 in _$LT$boa..syntax..parser..expression..ShiftExpression$u20$as$u20$boa..syntax..parser..TokenParser$LT$R$GT$$GT$::parse::ha501fd0502f572f1 /home/xsh/.cargo/registry/src/github.com-1ecc6299db9ec823/Boa-0.11.0/src/syntax/parser/expression/mod.rs:82:27
#21 0x55d5d74c22b9 in _$LT$boa..syntax..parser..expression..RelationalExpression$u20$as$u20$boa..syntax..parser..TokenParser$LT$R$GT$$GT$::parse::hd7a4e5c59a11bd3a /home/xsh/.cargo/registry/src/github.com-1ecc6299db9ec823/Boa-0.11.0/src/syntax/parser/expression/mod.rs:489:23
#22 0x55d5d74bf510 in _$LT$boa..syntax..parser..expression..EqualityExpression$u20$as$u20$boa..syntax..parser..TokenParser$LT$R$GT$$GT$::parse::h97c54a8a8023a8be /home/xsh/.cargo/registry/src/github.com-1ecc6299db9ec823/Boa-0.11.0/src/syntax/parser/expression/mod.rs:82:27
#23 0x55d5d74bc870 in _$LT$boa..syntax..parser..expression..BitwiseANDExpression$u20$as$u20$boa..syntax..parser..TokenParser$LT$R$GT$$GT$::parse::hfde59933043380d4 /home/xsh/.cargo/registry/src/github.com-1ecc6299db9ec823/Boa-0.11.0/src/syntax/parser/expression/mod.rs:82:27
#24 0x55d5d74b9bd0 in _$LT$boa..syntax..parser..expression..BitwiseXORExpression$u20$as$u20$boa..syntax..parser..TokenParser$LT$R$GT$$GT$::parse::h8751537ad6d7d705 /home/xsh/.cargo/registry/src/github.com-1ecc6299db9ec823/Boa-0.11.0/src/syntax/parser/expression/mod.rs:82:27
#25 0x55d5d74b4a30 in _$LT$boa..syntax..parser..expression..BitwiseORExpression$u20$as$u20$boa..syntax..parser..TokenParser$LT$R$GT$$GT$::parse::h35c650b664ab6de5 /home/xsh/.cargo/registry/src/github.com-1ecc6299db9ec823/Boa-0.11.0/src/syntax/parser/expression/mod.rs:82:27
#26 0x55d5d74ad8d3 in _$LT$boa..syntax..parser..expression..ShortCircuitExpression$u20$as$u20$boa..syntax..parser..TokenParser$LT$R$GT$$GT$::parse::hf51a94a14bb79e42 /home/xsh/.cargo/registry/src/github.com-1ecc6299db9ec823/Boa-0.11.0/src/syntax/parser/expression/mod.rs:218:13
#27 0x55d5d74a8a48 in _$LT$boa..syntax..parser..expression..assignment..conditional..ConditionalExpression$u20$as$u20$boa..syntax..parser..TokenParser$LT$R$GT$$GT$::parse::h99166c692c901a1d /home/xsh/.cargo/registry/src/github.com-1ecc6299db9ec823/Boa-0.11.0/src/syntax/parser/expression/assignment/conditional.rs:68:19
#28 0x55d5d749d6f1 in _$LT$boa..syntax..parser..expression..assignment..AssignmentExpression$u20$as$u20$boa..syntax..parser..TokenParser$LT$R$GT$$GT$::parse::h9a2ebe1a83c64ecf /home/xsh/.cargo/registry/src/github.com-1ecc6299db9ec823/Boa-0.11.0/src/syntax/parser/expression/assignment/mod.rs:175:23
...
Expected behavior
eval should return error properly instead of panic
Build environment (please complete the following information):
- OS: Ubuntu
- Version: 18.04
- Target triple: x86_64-unknown-linux-gnu
- Rustc version: rustc 1.46.0
Additional context
I compiled the program with AddressSanitizer.
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't workinghelp wantedExtra attention is neededExtra attention is needed
Type
Projects
Status
To do