summaryrefslogtreecommitdiff
path: root/usr.bin/dc
AgeCommit message (Collapse)Author
2006-01-19delint: check value against UINT_MAX before casting to u_int; whileOtto Moerbeek
there fix a buglet in bexp(): x * UINT_MAX only overflows if x > 0
2006-01-16delint; use size_t as stack size and ssize_t as stack pointer.Otto Moerbeek
2006-01-15delint; index is a global symbol, so rename some locals to avoidOtto Moerbeek
hiding
2006-01-15delint wrt return values, including some missing BN returnOtto Moerbeek
values checks.
2005-12-14Fix parsing of non-decimal fractions, which was giving bogus results.Otto Moerbeek
Noted by Zvezdan Petkovic in PR 4940.
2005-09-30deploy .An -nosplit; ok jmcJared Yanovich
2005-09-25Fix wrong normalization in compare. From andreas@Otto Moerbeek
2005-04-02- Fix raise for negative exponents (noted by naddy@)Otto Moerbeek
- Fix wrong scale for mantissa < 1.
2005-03-29Nicer wrapping. We used to mimick the old dc(1), which printsOtto Moerbeek
...\<newline><newline> in some cases. ok deraadt@
2005-03-28Linefeed is part of a line according to POSIX, so take that into accountOtto Moerbeek
when computing line wraps. ok deraadt@
2005-03-28spacingTheo de Raadt
2005-03-27Use inclusive bound check for line length, it is more clear.Otto Moerbeek
2005-03-27Make call stack auto-growing, instead of fixed size. Enables much deeperOtto Moerbeek
recursion.
2005-03-15snprintf(buf, sizeof(buf), "%s", p) is silly, use strlcpy(). From Bruno Rohee.Otto Moerbeek
2004-12-01use volatile sig_atomic_t for vars set in signal handlers. spotted by deraadt@Otto Moerbeek
2004-12-01Fix stop condition for sqrt. Due to the fact that we're doing NewtonOtto Moerbeek
iteration with intgeres, the stop condition is reached if x_n == x_n+1, or the difference is one, but only stop if that is hit a second time. Avoids looping with difference 1,-1,1,-1... Problem spotted by Paul de Weerd. Regress tested against 4.2BSD dc(1) and GNU dc(1).
2004-10-18Implement command line evaluation of expressions by implementing the -e option.Otto Moerbeek
ok weingart@
2004-09-14ARGSUSED before signal handler with unused signoTheo de Raadt
2004-07-11No need to free() after a failing realloc(), we're bailing out anyway.Otto Moerbeek
From Andrey Matveev.
2004-02-11Make flag set in signal handler volatileOtto Moerbeek
2004-02-01add paper.txt target;Jason McIntyre
2004-01-20duplicated entry; evarts@amazon.comTheo de Raadt
2004-01-13Add missing include. From espie@Otto Moerbeek
2003-12-19Do something sensible on ^C: unwind stack and be ready for new input.Otto Moerbeek
2003-12-02Fix a max recursion off-by-one.Otto Moerbeek
2003-12-01Allow for more registers using a 2 byte index. This feature isOtto Moerbeek
enabled by supplying the -x option on the command line. Allows long variable names in bc(1) (to appear soon). If no -x option is given, behave exactly as before. ok jmc@
2003-12-01Allow for more registers using a 2 byte index. This feature isOtto Moerbeek
enabled by supplying the -x option on the command line. Allows long variable names in bc(1) (to appear soon). If no -x option is given, behave exactly as before.
2003-11-26Avoid a core dump on reading uninitiazed array locations.Otto Moerbeek
2003-11-17A basic stack operation that is missing from the original dc (andOtto Moerbeek
GNU dc as well): drop ('R').
2003-11-14Implement new boolean operations 'N' (not), 'G' (equals), '(' (less)Otto Moerbeek
and '{' (less or equal). These operations push their result back to the stack. Used by soon to appear boolean operations in bc(1). man page tweaks and ok jmc@
2003-11-14The BN_add_word() bug has been squashed, so we don't need a workaroundOtto Moerbeek
any more.
2003-11-09Flush after 'n' operator.Otto Moerbeek
2003-11-06Describe non-portable extension # (comment), n (print w/o newline),Otto Moerbeek
and a (byte to char). Tweaks and ok jmc@
2003-11-06Implement non-portable extension # (comment), n (print w/o newline),Otto Moerbeek
and a (byte to char).
2003-11-04Duh, a stack machine without swap; implement GNU compatible 'r'Otto Moerbeek
(swap) operator. Prompted by Michael Knudsen <e at molioner dot dk>
2003-10-23quote args to make them expand properly;Jason McIntyre
2003-10-22Make J operator handle extended comparisons correctly.Otto Moerbeek
2003-10-22Document new extended comparison operators.Otto Moerbeek
ok jmc@
2003-10-22Implement extended comparison operators, to allow for an if ... else constructOtto Moerbeek
in bc(1).
2003-10-22Make ungetting a char read form a string behave the same as ungettingOtto Moerbeek
a char from a stream.
2003-10-20typos from Jared Yanovich;Jason McIntyre
2003-10-19Reorder descriptions of operators alphabetically.Otto Moerbeek
ok jmc@
2003-10-18- new sentence, new lineJason McIntyre
- spelling
2003-10-18err(1, "out of mem") -> err(1, NULL)Otto Moerbeek
2003-10-18#ifdef debug codeOtto Moerbeek
2003-10-18Describe new J and M operators. Also some small cleanup.Otto Moerbeek
2003-10-18o Implement new J (jump) and M (mark) operators. The J operatorOtto Moerbeek
pops n recursion levels and then skips to the first occurence of the M operator. These operators are used to implement the "continue" statement in bc(1). o Ifdef debug code.
2003-10-11Division and modulus operator (~). From hugh@.Otto Moerbeek
2003-10-01tweak;Jason McIntyre
ok otto@
2003-09-30Teach dc(1) how to read strings with unbalanced braces by introducingOtto Moerbeek
backslash as an escape char. This is needed for bc(1), which is required by Posix to handle strings with brackets in them.