[BACK]Return to iset.c CVS log [TXT][DIR] Up to [local] / OpenXM_contrib / gmp / mpz

Diff for /OpenXM_contrib/gmp/mpz/Attic/iset.c between version 1.1.1.2 and 1.1.1.3

version 1.1.1.2, 2000/09/09 14:12:54 version 1.1.1.3, 2003/08/25 16:06:33
Line 1 
Line 1 
 /* mpz_init_set (src_integer) -- Make a new multiple precision number with  /* mpz_init_set (src_integer) -- Make a new multiple precision number with
    a value copied from SRC_INTEGER.     a value copied from SRC_INTEGER.
   
 Copyright (C) 1991, 1993, 1994, 1996 Free Software Foundation, Inc.  Copyright 1991, 1993, 1994, 1996, 2000, 2001, 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 25  MA 02111-1307, USA. */
 #include "gmp-impl.h"  #include "gmp-impl.h"
   
 void  void
 #if __STDC__  
 mpz_init_set (mpz_ptr w, mpz_srcptr u)  mpz_init_set (mpz_ptr w, mpz_srcptr u)
 #else  
 mpz_init_set (w, u)  
      mpz_ptr w;  
      mpz_srcptr u;  
 #endif  
 {  {
   mp_ptr wp, up;    mp_ptr wp, up;
   mp_size_t usize, size;    mp_size_t usize, size;
Line 39  mpz_init_set (w, u)
Line 34  mpz_init_set (w, u)
   size = ABS (usize);    size = ABS (usize);
   
   w->_mp_alloc = MAX (size, 1);    w->_mp_alloc = MAX (size, 1);
   w->_mp_d = (mp_ptr) (*_mp_allocate_func) (w->_mp_alloc * BYTES_PER_MP_LIMB);    w->_mp_d = (mp_ptr) (*__gmp_allocate_func) (w->_mp_alloc * BYTES_PER_MP_LIMB);
   
   wp = w->_mp_d;    wp = w->_mp_d;
   up = u->_mp_d;    up = u->_mp_d;
   
   MPN_COPY (wp, up, size);    MPN_COPY (wp, up, size);
   w->_mp_size = usize;    w->_mp_size = usize;
   
   #ifdef __CHECKER__
     /* let the low limb look initialized, for the benefit of mpz_get_ui etc */
     if (size == 0)
       wp[0] = 0;
   #endif
 }  }

Legend:
Removed from v.1.1.1.2  
changed lines
  Added in v.1.1.1.3

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>