making either of the coponents of the first #c() float avoids that bug but gets a different one:
=== > (log #c(0e0 1) #c(0 -1)) #C(-0.0 -0.0) > (log #c(0 1e0) #c(0 -1)) #C(-0.0 -0.0) === but leaving the first #c() rational and making the second float does not avoid it. otoh, all float gets the correct results: === > (log #c(0.0 1.0) #c(0.0 -1.0)) #C(-1.0 0.0) > (log #c(0l0 1l0) #c(0l0 -1l0)) #C(-1.0l0 0.0l0) === -JimC -- James Cloos <cl...@jhcloos.com> OpenPGP: 0x997A9F17ED7DAEA6