Hi, I found the e() and l() in the bc(1) math library are not precise. Their scaling algorithms are wrong.
In addition, BSD bc evaluates length(0.000) to 1 instead of 3. Such a behaviour will surprise people who expect that length(x) >= scale(x). While POSIX is silent, the GNU bc returns 3. The attached patches fix them. They also enable the editline in the intaractive "bc -d". See also: http://www.FreeBSD.org/cgi/query-pr.cgi?pr=bin/159227 Regards, shinra [demime 1.01d removed an attachment of type application/octet-stream] [demime 1.01d removed an attachment of type application/octet-stream]
