mirror of
https://github.com/ashinn/chibi-scheme.git
synced 2025-07-06 20:56:38 +02:00
Complex normalization takes exactness into account.
This commit is contained in:
parent
3675f3a5ea
commit
a1057fa88e
1 changed files with 4 additions and 2 deletions
6
sexp.c
6
sexp.c
|
@ -1855,8 +1855,10 @@ sexp sexp_make_complex (sexp ctx, sexp real, sexp image) {
|
|||
sexp sexp_complex_normalize (sexp cpx) {
|
||||
return sexp_complexp(cpx)
|
||||
&& (sexp_complex_imag(cpx) == SEXP_ZERO
|
||||
|| (sexp_flonump(sexp_complex_imag(cpx))
|
||||
&& sexp_flonum_value(sexp_complex_imag(cpx)) == 0.0))
|
||||
/* Only normalize for an exact zero imaginary part. */
|
||||
/* || (sexp_flonump(sexp_complex_imag(cpx)) */
|
||||
/* && sexp_flonum_value(sexp_complex_imag(cpx)) == 0.0) */
|
||||
)
|
||||
? sexp_complex_real(cpx) : cpx;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue