Hi Artyom,
While I appreciate your point of view, I believe it is too focused on your own limited perspective. For example, Apple, Google, and Facebook are all using C++11 extensively.
Here in Silicon Valley, the startup ecosystem is using c++11/c++14 almost exclusively. They are using clang/llvm mostly, while quite a few others are using the latest g++, which is currently gcc-5.x. The vast majority of new jobs are created by the startup ecosystem. (Future boost releases should be mindful of the tool chains being used to create most of the new jobs.)
Yes... for every new project or actively developed one C++11 is great. But there are two areas where it isn't (a) Existing projects that need to be maintained in new environment (b) Libraries that need to support C++03 as they are used in wide range of environments (like Boost for example) and should provide same API.
I worked with the linux kernel for quite a few years, before focusing on C++11/14 and applications. It was a long standing policy of the kernel community to break APIs when they were getting in the way of progress.
Yes... but that is why if you want your code to work in Kernel you should push it to kernel and not keep to yourself. Kernel API is internal API of project. On the other hand user level API (i.e. system calls) are almost NEVER broken. I suggest if you refer to Linus and breaking API take a look on Red Hat and memcpy... when glibc decided to reverse copy direction and Flash stopped working. Linus was very critical of breaking stuff in User space. auto_ptr is user space. It isn't internal implementation of things it is public API and for kernel it never breaks. It is really frustrating the ease the API breaks effecting entire industry. Artyom