[EMAIL PROTECTED] writes:
>     Interval_t<int> r;
> +   r[BIGGER] = 0;
> +   r[SMALLER] = 0;
>     for (int i =0; i < head_l_arr_.size (); i++)
>       {
>         int p = head_l_arr_[i]->position_i_;
> 
> When the special case is relevant, the size() call returns zero, and
> the body of the loop never executes at all.
> 
> What I don't quite get is that this isn't specific to FreeBSD at all,
> unless the initial garbage in "r" is different.  It seems like others
> should have run into this also.

This should be no problem, Interval_t<int> is initialised to empty,
ie.  {INT_MAX, -INT_MAX}, and head_positions () should return empty if
size == 0.  Perhaps you could do a stacktrace of the crash to see
where the floating point exception happens precisely.

-- 

Han-Wen Nienhuys, [EMAIL PROTECTED] ** GNU LilyPond - The Music Typesetter 
      http://www.cs.uu.nl/people/hanwen/lilypond/index.html 

Reply via email to