Actually more often I have seen the opposite: claims the new stuff is going to be faster, the compiler is not smart enough to figure out that they are the same, and thus you should use the new stuff.
There was a coworker who insisted that using C++ std::foreach for loops was faster because "the compiler knows you can't break out of it and thus can optimize the whole thing". I had two objections to this: first of all it would be a really stupid optimizing compiler that could not figure out there are no "break" statements inside the for loop. And second the C++ was still allowed to throw exceptions in both cases.
The other objection I had was that the functors were unreadable.
Yet another objection is my suspicion that the optimization would be far worse on the functors due to the enormous header files of templates they actually used and I expected the optimizer for the simple for loop to have fewer bugs in it. But I did not test this.