Skip to content
This repository has been archived by the owner on May 18, 2024. It is now read-only.

dtoa & dtoa2 should be short-circuited for values of 0.0 #39

Open
GoogleCodeExporter opened this issue May 24, 2015 · 2 comments
Open

Comments

@GoogleCodeExporter
Copy link

A possible enhancement would be to check for a parameter of 0.0 for the value 
argument and then immediately set the str to "0" and return, similar to the NAN 
check.

e.g. for the case: 

"modp_dtoa2(0.0, str, n);"

The implementation may be better off being:

"size_t modp_dtoa2(double value, char * str, int prec) {
    if (!(value == value)) {    /* Test for NAN. */
        str[0] = 'n'; str[1] = 'a'; str[2] = 'n'; str[3] = 0;
        return (size_t) 3;
    }
    if (x = 0.0) {    /* Test for 0.0. */
        str[0] = '0'; str[1] = 0;
        return (size_t) 1;
    }

        //... Rest of implementation as-is...
}

Original issue reported on code.google.com by [email protected] on 23 Jul 2014 at 12:31

@client9
Copy link
Owner

client9 commented Sep 23, 2016

happy to accept pull requests here

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

2 participants