push
github
Add missing coercion when recording select(string, ...) Thanks to Peter Cawley. (cherry picked from commit 92b89d005) Before the patch, the recording of `select()` with a string argument leads to the following IR: | rcx > int CONV "1" int.num index Where the operand has string type instead of number type. This leads to the corresponding mcode: | cvttsd2si ecx, xmm1 Where xmm1 has an undefined value. Thus leads to the undefined behaviour for the recording trace. This patch adds the missing coercion. Sergey Kaplun: * added the description and the test for the problem Part of tarantool/tarantool#10199 Reviewed-by: Sergey Bronnikov <sergeyb@tarantool.org> Reviewed-by: Maxim Kokryashkin <m.kokryashkin@tarantool.org> Signed-off-by: Sergey Kaplun <skaplun@tarantool.org>
5686 of 6028 branches covered (94.33%)
Branch coverage included in aggregate %.
3 of 3 new or added lines in 1 file covered. (100.0%)
36 existing lines in 8 files now uncovered.21667 of 23433 relevant lines covered (92.46%)
2944223.18 hits per line