PrintInfo (converter);
converter << "--------------------------------------------------------"
- << std::endl
- << std::ends;
+ << std::endl;
+#ifndef HAVE_STD_STRINGSTREAM
+ converter << std::ends;
+#endif
description = converter.str();
std::ostrstream statname;
#endif
- statname << "/proc/" << id << "/stat" << std::ends;
+ statname << "/proc/" << id << "/stat";
+#ifndef HAVE_STD_STRINGSTREAM
+ statname << std::ends;
+#endif
static long size;
static string dummy;
ifstream stat(statname.str());
description << "[Integer range "
<< lower_bound << "..." << upper_bound
- << " (inclusive)]"
- << std::ends;
+ << " (inclusive)]";
+#ifndef HAVE_STD_STRINGSTREAM
+ description << std::ends;
+#endif
return description.str();
}
else
description << "[Floating point range "
<< lower_bound << "..." << upper_bound
- << " (inclusive)]"
- << std::ends;
+ << " (inclusive)]";
+#ifndef HAVE_STD_STRINGSTREAM
+ description << std::ends;
+#endif
return description.str();
}
else
else
dummy_out.setf (std::ios::fixed, std::ios::floatfield);
column.entries[i]->write_text (dummy_out);
+#ifndef HAVE_STD_STRINGSTREAM
dummy_out << std::ends;
-
+#endif
+
// get size, note that we are
// not interested in the
// trailing \0
#else
std::ostrstream namebuf;
#endif
- namebuf << '_' << i << std::ends;
+ namebuf << '_' << i;
+#ifndef HAVE_STD_STRINGSTREAM
+ namebuf << std::ends;
+#endif
names[i] = name + namebuf.str();
};
};
<h3>General</h3>
<ol>
+ <li> <p>
+ Fixed: For gcc versions that used <code
+ class="class">ostrstream</code> instead of <code
+ class="class">ostringstream</code>, it was necessary to append
+ a final <code class="member">std::ends</code> when piping text
+ into the string stream. This was not previously
+ conditionalized, but done for old and new classes.
+ <br>
+ (WB 2002/03/13)
+ </p>
+
<li> <p>
Changed: The configure machinery has been revamped
significantly.
filename << "solution-"
<< cycle
<< ".eps";
- // In order to append the final
- // '\0', we have to put an ``ends''
- // to the end of the string:
- filename << std::ends;
+ // For the old string stream
+ // classes, we have to append the
+ // final '\0' that appears at the
+ // end of ``char *''
+ // variables. This is done by the
+ // following construct:
+#ifndef HAVE_STD_STRINGSTREAM
+ filename << std::ends;
+#endif
// We can get whatever we wrote to
// the stream using the ``str()''
// function. If the new
#endif
out << "Iterative method reported convergence failure in step "
- << last_step << " with residual " << last_residual << std::ends;
+ << last_step << " with residual " << last_residual;
+#ifndef HAVE_STD_STRINGSTREAM
+ out << std::ends;
+#endif
description = out.str();
return description.c_str();