X-Git-Url: http://nsz.repo.hu/git/?p=musl;a=blobdiff_plain;f=src%2Fmath%2Fmodfl.c;h=bbfcdb8a8c37c4094da847d1e5ef864add7affd8;hp=6520a1c2baab5f8435bfc570908eb8c2c7082bc3;hb=be81f51030d90de8d5eb0b65dbdab3032d5cae23;hpb=75483499dad38b97f5dabb710635e6a8bbbb1c84 diff --git a/src/math/modfl.c b/src/math/modfl.c index 6520a1c2..bbfcdb8a 100644 --- a/src/math/modfl.c +++ b/src/math/modfl.c @@ -40,7 +40,7 @@ #if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024 long double modfl(long double x, long double *iptr) { - return modf(x, iptr); + return modf(x, (double *)iptr); } #elif (LDBL_MANT_DIG == 64 || LDBL_MANT_DIG == 113) && LDBL_MAX_EXP == 16384 @@ -81,7 +81,7 @@ long double modfl(long double x, long double *iptr) return x - ux.e; } else if (e >= LDBL_MANT_DIG - 1) { /* x has no fraction part. */ *iptr = x; - if (e == LDBL_MAX_EXP && (ux.bits.manh|ux.bits.manl)) /* nan */ + if (e == LDBL_MAX_EXP && ((ux.bits.manh&~LDBL_NBIT)|ux.bits.manl)) /* nan */ return x; return zero[ux.bits.sign]; } else { /* Fraction part is in manl. */