summaryrefslogtreecommitdiff
path: root/demos/expr
diff options
context:
space:
mode:
authorKevin Ryde <user42@zip.com.au>2003-09-25 00:39:19 +0200
committerKevin Ryde <user42@zip.com.au>2003-09-25 00:39:19 +0200
commit94c043e4175fafd6676a8ca101b70e71d96549e7 (patch)
tree82ca7121036fb01ed54d7266e60249cc80156b5d /demos/expr
parent28c41231c440d422052d3ff1e21ff86ea950df63 (diff)
downloadgmp-94c043e4175fafd6676a8ca101b70e71d96549e7.tar.gz
* demos/expr/exprfr.c: Allow for mpfr_inf_p, mpfr_nan_p and
mpfr_number_p merely returning non-zero, rather than 1 or 0.
Diffstat (limited to 'demos/expr')
-rw-r--r--demos/expr/exprfr.c24
1 files changed, 21 insertions, 3 deletions
diff --git a/demos/expr/exprfr.c b/demos/expr/exprfr.c
index 65e83e7f8..9f37065e6 100644
--- a/demos/expr/exprfr.c
+++ b/demos/expr/exprfr.c
@@ -183,6 +183,12 @@ e_mpfr_hypot (mpfr_ptr dst, mpfr_srcptr src1, mpfr_srcptr src2)
mpfr_hypot (dst, src1, src2, ROUND);
}
+static int
+e_mpfr_inf_p (mpfr_srcptr f)
+{
+ return (mpfr_inf_p (f) != 0);
+}
+
static void
e_mpfr_log (mpfr_ptr dst, mpfr_srcptr src)
{
@@ -219,12 +225,24 @@ e_mpfr_mul_2exp (mpfr_ptr dst, mpfr_srcptr src, unsigned long n)
mpfr_mul_2exp (dst, src, n, ROUND);
}
+static int
+e_mpfr_nan_p (mpfr_srcptr f)
+{
+ return (mpfr_nan_p (f) != 0);
+}
+
static void
e_mpfr_neg (mpfr_ptr dst, mpfr_srcptr src)
{
mpfr_neg (dst, src, ROUND);
}
+static int
+e_mpfr_number_p (mpfr_srcptr f)
+{
+ return (mpfr_number_p (f) != 0);
+}
+
static void
e_mpfr_pow_ui (mpfr_ptr p, mpfr_srcptr b, unsigned long e)
{
@@ -352,7 +370,7 @@ static __gmp_const struct mpexpr_operator_t _mpfr_expr_standard_table[] = {
{ "fma", (mpexpr_fun_t) e_mpfr_fma, MPEXPR_TYPE_TERNARY },
{ "gamma", (mpexpr_fun_t) e_mpfr_gamma, MPEXPR_TYPE_UNARY },
{ "hypot", (mpexpr_fun_t) e_mpfr_hypot, MPEXPR_TYPE_BINARY },
- { "inf_p", (mpexpr_fun_t) mpfr_inf_p, MPEXPR_TYPE_I_UNARY },
+ { "inf_p", (mpexpr_fun_t) e_mpfr_inf_p, MPEXPR_TYPE_I_UNARY },
{ "log", (mpexpr_fun_t) e_mpfr_log, MPEXPR_TYPE_UNARY },
{ "log2", (mpexpr_fun_t) e_mpfr_log2, MPEXPR_TYPE_UNARY },
{ "log10", (mpexpr_fun_t) e_mpfr_log10, MPEXPR_TYPE_UNARY },
@@ -361,11 +379,11 @@ static __gmp_const struct mpexpr_operator_t _mpfr_expr_standard_table[] = {
| MPEXPR_TYPE_PAIRWISE },
{ "min", (mpexpr_fun_t) e_mpfr_cmp, MPEXPR_TYPE_MIN
| MPEXPR_TYPE_PAIRWISE },
- { "nan_p", (mpexpr_fun_t) mpfr_nan_p, MPEXPR_TYPE_I_UNARY },
+ { "nan_p", (mpexpr_fun_t) e_mpfr_nan_p, MPEXPR_TYPE_I_UNARY },
{ "nextabove", (mpexpr_fun_t) mpfr_nextabove, MPEXPR_TYPE_UNARY },
{ "nextbelow", (mpexpr_fun_t) mpfr_nextbelow, MPEXPR_TYPE_UNARY },
{ "nexttoward", (mpexpr_fun_t) mpfr_nexttoward, MPEXPR_TYPE_BINARY },
- { "number_p",(mpexpr_fun_t) mpfr_number_p, MPEXPR_TYPE_I_UNARY },
+ { "number_p",(mpexpr_fun_t) e_mpfr_number_p,MPEXPR_TYPE_I_UNARY },
{ "reldiff", (mpexpr_fun_t) e_mpfr_reldiff, MPEXPR_TYPE_BINARY },
{ "round", (mpexpr_fun_t) mpfr_round, MPEXPR_TYPE_UNARY },
{ "sgn", (mpexpr_fun_t) e_mpfr_sgn, MPEXPR_TYPE_I_UNARY },