OK, the line of code causing the frame rate hit was the following: if((fabs(xyp.y() - xyc.y()) < ((runway.length/2.0) + 5.0)) && (fabs(xyp.x() - xyc.x()) < (runway.width/2.0))) { return(true); } return false;
To simplify things, I broke it down into a few more lines: double rlen = runway.length/2.0 + 5.0; double rwidth = runway.width/2.0; double ldiff = fabs(xyp.y() - xyc.y()); double wdiff = fabs(xyp.x() - xyc.x()); return((ldiff < rlen) && (wdiff < rwidth)); whereupon I found it was the last of those lines that caused the hit. Replacing the offending line: return((ldiff < rlen) && (wdiff < rwidth)); with the somewhat more verbose if(ldiff < rlen) { return(wdiff < rwidth); } else { return(false); } cures it completely! Am I doing something really daft, or is this a genuine compiler bug? Cheers - Dave _______________________________________________ Flightgear-devel mailing list [EMAIL PROTECTED] http://mail.flightgear.org/mailman/listinfo/flightgear-devel