Ulrich Windl <[EMAIL PROTECTED]> writes: > when trying to compile an older application that compiled for around g++ 2.8, > I see several errors: > > `cerr' undeclared (formerly from <iostream.h> I think)
Add "using namespace std;" or replace 'cerr' with 'std::cerr' ... > `std::basic_string' cannot be converted to `const char *' when used as actual > parameter for a function call Use string::c_str() to get the "C string representation" ... > The macro definition > #define foo(n) set_##n##(const char *s) > does no longer work. The error is ` pasting "set_SAMPLE" and "(" does not give > a valid preprocessor token That's because one of the '##' is unnecessary. Try '#define foo(n) set_ ## n (const char *s)' > Is there some "porting guide" for those who did not actively follow recent C++ > development? I don't know of such, but would recommend "Accelerated C++" by Andrew Koenig and Barbara E. Moo as a "quick refresh course on modern C++". http://www.acceleratedcpp.com/ A lot of your errors appear to stem from very dated understanding of C++. Cheers, -- In order to understand recursion you must first understand recursion. Remove /-nsp/ for email. _______________________________________________ Help-gplusplus mailing list Help-gplusplus@gnu.org http://lists.gnu.org/mailman/listinfo/help-gplusplus