I think inevitably we all look at languages from the angle of our own experience. For me, thinking of Go as any sort of replacement for C/C++ comes down to the fact that I've used those languages almost exclusively at a very low level. For me, that is firmware on micro-controllers, and not at the level of linux applications or arduino applications, but direct to the 'bare metal' applications where direct memory addressing and other constructs that are 'poor practice' in high level development are the norm. For example I've implemented an http server on an 8-bit microcontrollers with ~3KB of RAM. I can't imagine doing anything remotely close to that type of work in Go, it's on the wrong planet. Rust on the other hand does seem to have the capabilities required to do that type work so in the end, I don't see them competing in any grand sense, they are different languages for different purposes.
Put in other words, there is a class of problems C/C++ are used for which Go isn't even remotely suitable for, on the other hand, there is a large class of problems that C++ was used for, that could have been written in Java and Go is a good replacement for. I feel that the subset of problems that were/are solved in C/C++ that could not have been solved in something like Java is fairly small. Off the top of my head things like high end video games, high frequency trading, perhaps database type systems where direct memory access may not really be needed yet the performance constraints are tight enough that something like Java was too slow for it. This may be where the 'systems programming language' moniker came from. I would guess that Google has a disproportionately large set of problems that fit into the space that I think is relatively rare for the programming community at large.
Yeah, the thing is C/C++ have a wide range of applications, so different alternatives to C/C++ can validly be intended as that and have minimal overlap in core focus.
Put in other words, there is a class of problems C/C++ are used for which Go isn't even remotely suitable for, on the other hand, there is a large class of problems that C++ was used for, that could have been written in Java and Go is a good replacement for. I feel that the subset of problems that were/are solved in C/C++ that could not have been solved in something like Java is fairly small. Off the top of my head things like high end video games, high frequency trading, perhaps database type systems where direct memory access may not really be needed yet the performance constraints are tight enough that something like Java was too slow for it. This may be where the 'systems programming language' moniker came from. I would guess that Google has a disproportionately large set of problems that fit into the space that I think is relatively rare for the programming community at large.