diff options
author | thevenyp <thevenyp@211d60ee-9f03-0410-a15a-8952a2c7a4e4> | 2009-03-17 17:23:41 +0000 |
---|---|---|
committer | thevenyp <thevenyp@211d60ee-9f03-0410-a15a-8952a2c7a4e4> | 2009-03-17 17:23:41 +0000 |
commit | 960f02dc3261c73558e179af2d0be839a75aa885 (patch) | |
tree | c4a9e61ccc5c6e4577f7c9a619813ddea86b8f76 /src/fr_sub.c | |
parent | 07f353af30b60f3adf1aa55418a1fa185b937b07 (diff) | |
download | mpc-960f02dc3261c73558e179af2d0be839a75aa885.tar.gz |
Modify #include chain so as to support DLL creation on Cygwin
git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@457 211d60ee-9f03-0410-a15a-8952a2c7a4e4
Diffstat (limited to 'src/fr_sub.c')
-rw-r--r-- | src/fr_sub.c | 73 |
1 files changed, 35 insertions, 38 deletions
diff --git a/src/fr_sub.c b/src/fr_sub.c index 34a4928..9e5eedd 100644 --- a/src/fr_sub.c +++ b/src/fr_sub.c @@ -1,38 +1,35 @@ -/* mpc_fr_sub -- Substract a complex number from a floating-point number. - -Copyright (C) 2008 Philippe Th\'eveny - -This file is part of the MPC Library. - -The MPC Library is free software; you can redistribute it and/or modify -it under the terms of the GNU Lesser General Public License as published by -the Free Software Foundation; either version 2.1 of the License, or (at your -option) any later version. - -The MPC Library is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public -License for more details. - -You should have received a copy of the GNU Lesser General Public License -along with the MPC Library; see the file COPYING.LIB. If not, write to -the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, -MA 02111-1307, USA. */ - -#include "gmp.h" -#include "mpfr.h" -#include "mpc.h" -#include "mpc-impl.h" - -/* return 0 iff both the real and imaginary parts are exact */ -int -mpc_fr_sub (mpc_ptr a, mpfr_srcptr b, mpc_srcptr c, mpc_rnd_t rnd) -{ - int inex_re, inex_im; - - inex_re = mpfr_sub (MPC_RE(a), b, MPC_RE(c), MPC_RND_RE(rnd)); - inex_im = mpfr_set (MPC_IM (a), MPC_IM (c), INV_RND (MPC_RND_IM (rnd))); - MPFR_CHANGE_SIGN (MPC_IM (a)); - - return MPC_INEX(inex_re, inex_im); -} +/* mpc_fr_sub -- Substract a complex number from a floating-point number.
+
+Copyright (C) 2008, 2009 Philippe Th\'eveny
+
+This file is part of the MPC Library.
+
+The MPC Library is free software; you can redistribute it and/or modify
+it under the terms of the GNU Lesser General Public License as published by
+the Free Software Foundation; either version 2.1 of the License, or (at your
+option) any later version.
+
+The MPC Library is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
+License for more details.
+
+You should have received a copy of the GNU Lesser General Public License
+along with the MPC Library; see the file COPYING.LIB. If not, write to
+the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
+MA 02111-1307, USA. */
+
+#include "mpc-impl.h"
+
+/* return 0 iff both the real and imaginary parts are exact */
+int
+mpc_fr_sub (mpc_ptr a, mpfr_srcptr b, mpc_srcptr c, mpc_rnd_t rnd)
+{
+ int inex_re, inex_im;
+
+ inex_re = mpfr_sub (MPC_RE(a), b, MPC_RE(c), MPC_RND_RE(rnd));
+ inex_im = mpfr_set (MPC_IM (a), MPC_IM (c), INV_RND (MPC_RND_IM (rnd)));
+ MPFR_CHANGE_SIGN (MPC_IM (a));
+
+ return MPC_INEX(inex_re, inex_im);
+}
|