In a C++ program I'd written data - complex<long real> to a file: (66.184415158223105773,-0.00037139050691640109188) (nan,0) (nan,0) (nan,nan) (nan,0) (66.184390020754110227,0.00076665851805737529283) (66.201451462903545667,0.0097865244553575969136) (66.273663243057493816,0.011598247090358962108) (65.35171132660672394,-0.03138479279043892791) and so on. All written values are as expected.
Reading back these data I get: (66.1844,-0.000371391) (0,0) (6.97431e-3261,0) (6.97431e-3261,0) (6.97431e-3261,0) and so on (exception: the first number after a line change is always read to (7.72947e-3833,0) ) There's no error message - it acts like a correct read -- Summary: reading complex (nan,0) and (nan,nan): write o.k, reading back: wrong data read Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: libstdc++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: kohlhz at t-online dot de http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45279