diff options
| author | Rich Felker <dalias@aerifal.cx> | 2011-03-25 16:34:03 -0400 | 
|---|---|---|
| committer | Rich Felker <dalias@aerifal.cx> | 2011-03-25 16:34:03 -0400 | 
| commit | 9ae8d5fc71a4b61ec826d58f03f7b543755fb1d4 (patch) | |
| tree | a712bede2bb0cef734418927fee7704732628e83 /src/stdlib | |
| parent | a37452430f93700aeb122d693959ad79d8e43ada (diff) | |
| download | musl-9ae8d5fc71a4b61ec826d58f03f7b543755fb1d4.tar.gz | |
fix all implicit conversion between signed/unsigned pointers
sadly the C language does not specify any such implicit conversion, so
this is not a matter of just fixing warnings (as gcc treats it) but
actual errors. i would like to revisit a number of these changes and
possibly revise the types used to reduce the number of casts required.
Diffstat (limited to 'src/stdlib')
| -rw-r--r-- | src/stdlib/strtold.c | 6 | ||||
| -rw-r--r-- | src/stdlib/strtoumax.c | 2 | 
2 files changed, 4 insertions, 4 deletions
| diff --git a/src/stdlib/strtold.c b/src/stdlib/strtold.c index 54f80469..73f2b082 100644 --- a/src/stdlib/strtold.c +++ b/src/stdlib/strtold.c @@ -4,7 +4,7 @@  long double strtold(const char *s1, char **p)  { -	const unsigned char *s = s1; +	const unsigned char *s = (void *)s1;  	long double x = 0;  	long double frac;  	int sign = 0; @@ -53,7 +53,7 @@ long double strtold(const char *s1, char **p)  			}  		}  		if ((*s|32) == 'p') { -			e = strtol(s+1, (void *)&s, 10); +			e = strtol((void *)(s+1), (void *)&s, 10);  			for (; e>0; e--) x *= 2.0;  			for (; e<0; e++) x *= 0.5;  		} @@ -82,7 +82,7 @@ long double strtold(const char *s1, char **p)  		}  	}  	if ((*s|32)=='e') { -		e = strtol(++s, (void *)&s, 10); +		e = strtol((void *)++s, (void *)&s, 10);  		for (; e>0; e--) x *= 10.0;  		for (; e<0; e++) x /= 10.0;  	} diff --git a/src/stdlib/strtoumax.c b/src/stdlib/strtoumax.c index a529f6e8..f1902476 100644 --- a/src/stdlib/strtoumax.c +++ b/src/stdlib/strtoumax.c @@ -26,7 +26,7 @@ static const unsigned char digits[] = {  uintmax_t strtoumax(const char *s1, char **p, int base)  { -	const unsigned char *s = s1; +	const unsigned char *s = (void *)s1;  	size_t x1, z1;  	uintmax_t x, z=0;  	int sign = 0; | 
