C++ What is and isn't implemented in the Arduino IDE

Dyslexicbloke:
Is there documentation somewhere that will tell me what parts of C++ are and aren't implemented.

sprintf being a prime example ...

One thing that will help in your searching is to understand that the compiler, the language, and the run-time libraries are three distinct entities.

sprintf is a function in the C(++) run-time library. It's only connection to C(++) is that it is included with most toolsets. I've actually used sprintf in a Pascal program.

The Libc (run-time libraries included with the AVR port of GCC) documentation can be found here...
http://www.nongnu.org/avr-libc/