summaryrefslogtreecommitdiffstats
path: root/generic/tclStrToD.c
Commit message (Collapse)AuthorAgeFilesLines
* Merge 8.6jan.nijtmans2019-06-151-4/+4
|\
| * Merge 8.5jan.nijtmans2019-06-151-4/+4
| |\
| | * Use mp_init_set() in stead of mp_init_set_int() when the constant is ↵jan.nijtmans2019-06-151-4/+4
| | | | | | | | | | | | sufficiently small. This is slightly better optimized.
| | * Update some libtommath functions to the latest trunk versions. Small step ↵jan.nijtmans2019-05-291-26/+26
| | | | | | | | | | | | | | | forward in the upgrade to (upcoming) libtommath 1.2. Advantage: simplify Tcl code accessing those functions.
* | | Merge 8.6jan.nijtmans2019-05-311-1/+1
|\ \ \ | |/ /
| * | Rename mp_get_bit to s_mp_get_bit, rename mp_tc_div_2d to mp_signed_rsh, ↵jan.nijtmans2019-05-311-1/+1
| | | | | | | | | | | | remove mp_tc_(add|or|xor) functions in favor of mp_(add|or|xor) which can now handle twos-complement. Following ongoing changes in libtommath development.
* | | Merge 8.6jan.nijtmans2019-05-141-15/+15
|\ \ \ | |/ /
| * | Merge 8.5jan.nijtmans2019-05-141-15/+15
| |\ \ | | |/
| | * DIGIT_BIT -> MP_DIGIT_BIT, since DIGIT_BIT is deprecated in future ↵jan.nijtmans2019-05-141-15/+15
| | | | | | | | | | | | | | | libtommath versions. So, better stop using it at all. Also add some other defines/typdefs for future libtommath compatibility.
| * | Eliminate all usage of mp_iszero/mp_iseven/mp_isodd/mp_isneg from ↵jan.nijtmans2019-03-251-3/+3
| | | | | | | | | | | | libtommath: In the upcoming new version those will become real functions, causing possible binary incompatibility. This change makes Tcl independant from libtommath's changes.
* | | Eliminate usage of mp_isneg(), just check bignum->sign directly (as ↵jan.nijtmans2019-03-151-8/+8
| | | | | | | | | | | | | | | libtommath itself does) Make TclInitBugnumFromLong() a static function in stubtable only, as it isn't used by Tcl anymore.
* | | Use mp_get_bit() instead of mp_iseven()/mp_isodd(): Those latter functions ↵jan.nijtmans2019-03-081-1/+1
| | | | | | | | | | | | are macro's currently, but will be real function in next libtommath. Bad idea for Tcl to depend on ...
* | | Various tommath/numeric related optimizations:jan.nijtmans2019-03-021-93/+45
| | | | | | | | | | | | - Remove the DD_STEEL formatter: it isn't used anywhere in Tcl, and not recommended. - Remove double limit-checks, which are already done inside mp_to_unsigned_bin_n()
* | | More use of TclHasIntRep() macro. Add vfs build director to fossil ignore-globjan.nijtmans2019-03-011-2/+2
| | |
* | | Fix "executable" flag for many files (now really!)jan.nijtmans2018-11-071-0/+0
| | |
* | | Implement TIP 445dkf2018-11-061-0/+0
| | |
* | | General code style cleanup.dkf2018-05-131-2/+2
| | |
* | | Use mp_isneg() in stead of mp_cmp_d() when the output of this function is ↵jan.nijtmans2018-02-271-2/+2
| | | | | | | | | | | | simply compared with MP_LT.
* | | Rebase back to 8.7 (core-8-branch), since that's what the TIP is meant for. ↵jan.nijtmans2017-11-091-1/+64
|\ \ \ | | | | | | | | | | | | (I see no reason to wait for 9.0)
* \ \ \ merge trunkdgp2017-11-091-64/+1
|\ \ \ \
| * | | | Implementation branch for TIP 114 - Eliminate Octal Parsing...dgp2017-10-231-64/+1
| |/ / /
* | | | More code simplifications, with still equal functionality.jan.nijtmans2017-11-071-34/+6
| | | |
* | | | Finally, get rid of tclWideIntType completelyjan.nijtmans2017-11-011-2/+2
| | | |
* | | | Experimental branch meant to eliminate the "wideint" type, just merge it to ↵jan.nijtmans2017-10-301-4/+4
|/ / / | | | | | | | | | a single "int" type. No effect on linux64 and similar systems, code simplification for Win64 and 32-bit system. No TIP yet, implementation ongoing.
* | | Make mp_get_long and mp_set_long available to tommath-enabled Tcl ↵jan.nijtmans2017-09-131-16/+16
| | | | | | | | | | | | extensions. Deprecate the internal TclBNInitBignumFrom* functions, in favor of the official tommath functions with the same purpose.
* | | merge core-8-6-branchjan.nijtmans2017-07-031-26/+26
|\ \ \ | |/ /
| * | 'inline static' -> 'static inline' and 'INLINE' -> 'inline', for consistancy.jan.nijtmans2017-07-031-26/+26
| | |
* | | TIP #472 implementation: Add Support for 0d Radix Prefix to Integer Literalsjan.nijtmans2017-06-231-1/+16
|\ \ \
| * \ \ Merge core-8-6-branch. jan.nijtmans2017-06-151-1/+2
| |\ \ \ | | |/ / | | | | | | | | Fix gcc warning: tclStrToD.c:1180:2: warning: enumeration value ‘ZERO_D’ not handled in switch [-Wswitch] switch (acceptState) {
| * | | Rebase to core-8-6-branch (who told that fossil doesn't know how to rebase ....)jan.nijtmans2017-06-141-1/+15
| |\ \ \
| | * | | Implement proposed 0d decimal radix prefix to compliment 0x,0b,0o.griffin2017-05-271-1/+15
| | | | |
* | | | | merge core-8-6-branchjan.nijtmans2017-06-151-1/+1
|\ \ \ \ \ | |_|/ / / |/| | / / | | |/ / | |/| |
| * | | Make panic in TclParseNumber() work when IEEE_FLOATING_POINT is not defined.jan.nijtmans2017-06-151-1/+1
| |/ /
* | | In comments and documentation, distinguish between __int64 (a Microsoft ↵jan.nijtmans2017-03-291-2/+2
|\ \ \ | |/ / | | | | | | 64-bit integer type) and int64_t (C99 equivalent)
| * | In comments and documentation, distinguish between __int64 (a Microsoft ↵jan.nijtmans2017-03-291-2/+2
| | | | | | | | | | | | 64-bit integer type) and int64_t (C99 equivalent)
* | | Fix for Ticket [71c0878b71] + test casesavl2017-03-051-1/+1
| | |
* | | Shortcut in TclParseNumber(): If obj is a dict or list, don't bother to ↵jan.nijtmans2017-02-081-10/+17
|/ / | | | | | | | | | | generate the string representation if we know already beforehand that the parsing will fail. Use TCL_NO_DEPRECATED in stead of KILL_OCTAL for removing the (deprecated un-prefixed) octal support. Adapt test-cases, so they work without octal support as well.
* | [be003d570f] TclParseNumber() failed to fully implement TCL_PARSE_BINARY_ONLY.dgp2016-10-121-1/+1
| |
* | [be003d570f] TclParseNumber() failed to fully implement TCL_PARSE_OCTAL_ONLY.dgp2016-10-121-0/+9
|\ \ | |/
| * [be003d570f] TclParseNumber() failed to fully implement TCL_PARSE_OCTAL_ONLY.dgp2016-10-121-0/+6
| |
| * RefineApproximation() leaked twoMv and twoMd in one of its exits.dgp2016-01-281-0/+2
| |
* | Eliminate unnessessary end-of-line spacing. No functional change.jan.nijtmans2015-10-041-4/+4
|\ \ | |/
| * Eliminate unnessessary end-of-line spacing. No functional change.jan.nijtmans2015-10-041-99/+99
| |
* | Plug leak of two mp_ints.dgp2015-07-021-0/+2
| |
* | Silence compiler warning.dgp2015-06-241-2/+1
|\ \ | |/
| * Make sure that an input lying precisely 1/2 ULP between two floating point ↵dgp2015-06-241-8/+30
| | | | | | | | values is rounded to even.
* | Make sure that an input lying precisely 1/2 ULP between two floating point ↵Kevin B Kenny2015-06-201-8/+31
| | | | | | | | values is rounded to even.
* | Fix execute permission on many files which shouldn't have it.jan.nijtmans2013-10-171-0/+0
|\ \ | |/
| * Fix execute permission on many files which shouldn't have it.jan.nijtmans2013-10-171-0/+0
| |
* | Implement Tcl_NewBooleanObj, Tcl_DbNewBooleanObj and Tcl_SetBooleanObj as ↵jan.nijtmans2013-04-231-2/+2
|\ \ | |/ | | | | | | | | macros using Tcl_NewIntObj, Tcl_DbNewLongObj and Tcl_SetIntObj. Starting with Tcl 8.5, this is exactly the same, it only eliminates code duplication. Eliminate use of NO_WIDE_TYPE everywhere: It's exactly the same as TCL_WIDE_INT_IS_LONG