On Wed, 11 Mar 2015 02:10:29 -0700, <[email protected]> wrote:
_How_ do we arrive at different versions of 3.0 here, or at GCC considering 3.0 > 3.0 ?
Probably we get different numbers that are close to 3.00... or 2.99... The head positions are individually multiplied by staff-space in Grob::get_offset() and then divided by staff-space Staff_symbol_referencer::internal_get_position() and at magstep=2 staff-space is 2^(1/3) I think a standard-conforming implementation should give bit-identical floating-point results for these parallel computations, but suspect some compiler option is set to allow non-conformance (retaining the most-recent value in register with its guard bits intact for the comparison, maybe). In general, I think it wisest for us to code in a way that allows floating point to be inexact. The broader change that I considered was to count only only [+inf -inf] as the 'empty' interval in is_empty() as we considered doing before.
https://codereview.appspot.com/217720043/
_______________________________________________ lilypond-devel mailing list [email protected] https://lists.gnu.org/mailman/listinfo/lilypond-devel
