It got broken in r939. The problem is in Cell.icc:
//-----------------------------------------------------------------------------
inline bool
Cell::integral_within(APL_Complex A, APL_Float B)
{
const APL_Complex C = -A;
return tolerant_floor(C, B) == tolerant_floor(A, B);
}
//-----------------------------------------------------------------------------
You're missing a minus sign before the second "tolerant_floor".
Jay.
On 14 June 2017 at 13:04, Juergen Sauermann <[email protected]>
wrote:
> Hi Fred,
>
> not sure what to do about that. On my machine I am getting:
>
> * 1J3 ∣ 8J4*
> *0*
>
> and your *TGI0.apl * program seems not to output anything.
>
> Best Regqrds,
> Jürgen Sauermann
>
>
>
> On 06/14/2017 05:52 AM, Frederick Pitts wrote:
>
> Juergen,
>
> I'm seeing errors with the mod (∣) operator applied to Gaussian
> integers again. With svn 896, the mod operator yields a nonzero
> residual result while the division operator yields an exact Gaussian
> integer quotient result as follows
>
> 1J3 ∣ 8J4
> 1J3
> 8J4 ÷ 1J3
> 2J¯2
> 1J3 × 2J¯2
> 8J4
>
> I'm running Fedora 25, 64 bit, on an Intel Core i7-6700 4 core
> CPU with 16 Gbyte memory.
>
> The attached TGI0.apl generates many more failure examples if
> needed.
>
> Regards,
>
> Fred
>
>
>