I know that at least one of the changes in C++11 that will cause some old code to stop compiling: the introduction of explicit operator bool() in the standard l
explicit operator bool()
struct x { x(int) {} }; void f(auto x = 3) { } int main() { f(); }
C++03: valid.
C++0x: error: parameter declared 'auto'
error: parameter declared 'auto'