I do not see how this not being an error is a problem. First, you can usually toggle this via a compiler flag. Second, I personally find it very convenient that the compiler does not stop for such things. This gives me more freedom how I can do my work, e.g. fixing const warning or do some other change first.
I do not agree about the APIs being worse than C++.
I do not agree about the APIs being worse than C++.