Masamichi Hosoda <truer...@trueroad.jp> writes:

>>>       -fexcess-precision=style
>>>           This option allows further control over excess precision on
>>>           machines where floating-point operations occur in a format
>>>           with more precision or range than the IEEE standard and
>>>           interchange floating-point types.  By default,
>>>           -fexcess-precision=fast is in effect; this means that
>>>           operations may be carried out in a wider precision than the
>>>           types specified in the source if that would result in faster
>>>           code, and it is unpredictable when rounding to the types
>>>           specified in the source code takes place.
>> 
>> This sounds promising.
>
> If I understand correctly, such compiler options are not promising.
>
> Even if LilyPond C++ source codes are compiled with such option,
> libguile without the option may calculate in a wider precision.
> In this case, the floating point calculation
> inside GUILE causes these issues.

The problem as far as I can see are non-reproducible results, and the
Guile code paths do not change from one call to the next.  So unless
just-in-time compilation comes into play, I don't think that Guile
behavior should be a problem concerning our non-reproducibility problem.

-- 
David Kastrup

Reply via email to