We came across this issue in one of our applications with clang 3.5.0. The following code compiles just fine in "C++03" mode, but fails in "C++11" mode. Is clang right here, or is it a compiler bug? Note that the work around (commented out below) is pretty simple and works in both modes, but I'm not sure why...
// (works) /usr/bin/clang++ ss.C // (fails) /usr/bin/clang++ -std=c++11 ss.C #include <sstream> #include <iostream> int main() { std::istringstream is; int val = 42; // If you change the return type to "auto" you get the error message: // error: call to implicitly-deleted copy constructor of 'std::__1::basic_istream<char>' // but only in C++11. bool t = (is >> val); // This one works just fine with or without -std=c++11 // bool ok = false; // if (is >> val) // ok = true; return 0; } -- John ------------------------------------------------------------------------------ _______________________________________________ Libmesh-devel mailing list Libmesh-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/libmesh-devel