ace81cd46c
bc/dc: fix length(0) and length(0.000nnn) result
...
function old new delta
zxc_vm_process 6464 6498 +34
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2021-02-26 14:23:13 +01:00
10509a70ee
dc: Parse error & fix out of bounds read in xc_program_printString
...
function old new delta
xc_program_print 712 735 +23
Signed-off-by: Brian Foley <bpfoley@google.com >
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2019-09-05 10:53:21 +02:00
b64470be17
dc: Fix segfault when executing strings generated using asciify
...
function old new delta
zxc_vm_process 6884 6891 +7
Signed-off-by: Brian Foley <bpfoley@google.com >
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2019-09-05 10:50:13 +02:00
7454879a1d
dc: execute shouldn't pop if stack head is not a string
...
This matches the behaviour of both GNU dc (as specified in
its man page), and BSD dc (where stack_popstring() pops
only if the head is a string.)
Add a couple of tests to verify this behavior.
function old new delta
zxc_vm_process 6882 6884 +2
Signed-off-by: Brian Foley <bpfoley@google.com >
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2019-09-05 10:46:22 +02:00
32c8ce4def
dc.tests: fix two test case to also depend on DC_BIG
...
Signed-off-by: Chen Qi <Qi.Chen@windriver.com >
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2019-04-19 12:30:11 +02:00
1db367a8e6
dc: fit returning of string
...
function old new delta
zxc_program_exec 4087 4098 +11
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2019-01-04 06:18:00 +01:00
6842c6062a
dc: fix '?'
...
function old new delta
zdc_parse_expr 470 479 +9
zxc_vm_process 839 814 -25
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/1 up/down: 9/-25) Total: -16 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2019-01-04 05:41:47 +01:00
1476760600
bc: rename config options
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2018-12-28 13:32:04 +01:00
8fac1c7740
dc: add two tests
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2018-12-25 20:50:41 +01:00
badf683b0a
dc: unbreak interactive mode - was trying to get next tokens instead of executing
...
function old new delta
zbc_program_read - 268 +268
zdc_program_printStream - 146 +146
zbc_program_exec 4046 4182 +136
zdc_program_execStr 472 512 +40
zdc_parse_exprs_until_eof - 26 +26
zbc_vm_process 740 765 +25
zbc_lex_next 2225 2240 +15
zdc_parse_expr 569 535 -34
zbc_program_pushArray 147 - -147
zdc_program_asciify 370 - -370
------------------------------------------------------------------------------
(add/remove: 3/2 grow/shrink: 4/1 up/down: 656/-551) Total: 105 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2018-12-22 18:10:50 +01:00
9a23b07c4c
testsuite: add bc and dc tests
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2018-12-12 21:41:40 +01:00
a133137174
dc: fix testsuite
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2018-12-06 18:46:42 +01:00
70e30e8eec
dc: tweak parsing
...
https://bugs.debian.org/538685
dc requires whitespace between language elements.
We were requiring
1 2 + p
instead of the abbreviated
1 2+p
(for example).
function old new delta
stack_machine 97 126 +29
dc_main 117 79 -38
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/1 up/down: 29/-38) Total: -9 bytes
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com >
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2015-02-16 17:12:04 +01:00