Re: despite the enthusiasm of developers [snip] adoption remains limited
"C++ such as null pointer exceptions, double frees, buffer overflows"
Code written in modern C++ (2011 onwards) doesn't have to suffer from any of that as all the containers you need to avoid manual memory allocation and raw pointers are there for you. And the bonus is that if you DO need raw pointers - for example when accessing H/W direct or doing other low level twiddling - then you still have them too.
As for data races - threading and multi process IPC is a black art which many people think they've grokked but often haven't and so leave nasty little once in a blue moon gotchas in their code. I doubt thats any different in Rust for any significant complexity of code as there's only so much the language and OS can do for you.