version 1.1, 2000/09/09 14:13:06 |
version 1.1.1.2, 2003/08/25 16:06:34 |
|
|
/* mpq_set_d(mpq_t q, double d) -- Set q to d without rounding. |
/* mpq_set_d(mpq_t q, double d) -- Set q to d without rounding. |
|
|
Copyright (C) 2000 Free Software Foundation, Inc. |
Copyright 2000, 2002 Free Software Foundation, Inc. |
|
|
This file is part of the GNU MP Library. |
This file is part of the GNU MP Library. |
|
|
Line 24 MA 02111-1307, USA. */ |
|
Line 24 MA 02111-1307, USA. */ |
|
#include "longlong.h" |
#include "longlong.h" |
|
|
#if BITS_PER_MP_LIMB != 32 && BITS_PER_MP_LIMB != 64 |
#if BITS_PER_MP_LIMB != 32 && BITS_PER_MP_LIMB != 64 |
This file does not handle any the used BITS_PER_MP_LIMB. |
choke me |
#endif |
#endif |
|
|
void |
void |
#if __STDC__ |
|
mpq_set_d (mpq_ptr dest, double d) |
mpq_set_d (mpq_ptr dest, double d) |
#else |
|
mpq_set_d (dest, d) |
|
mpq_ptr dest; |
|
double d; |
|
#endif |
|
{ |
{ |
int negative; |
int negative; |
mp_exp_t exp; |
mp_exp_t exp; |
mp_limb_t tp[3]; |
mp_limb_t tp[LIMBS_PER_DOUBLE]; |
mp_ptr np, dp; |
mp_ptr np, dp; |
mp_size_t nn, dn; |
mp_size_t nn, dn; |
int c; |
int c; |