There is legal C that is legal C++ but has different observable behaviour
And if you're "writing C in C++" then you're not really using C++ as it was intended, might as well just write C and use a C compiler.
Well it was, once upon a time; as https://en.wikipedia.org/wiki/C%2B%2B puts it,
> Initially, Stroustrup's "C with Classes" added features to the C compiler, Cpre, including classes, derived classes, strong typing, inlining and default arguments.[22]
...but that's not really true anymore. Certainly, C++ has classes, and there is a decent-sized overlap between them such that you can write code that compiles (correctly, even) in both, but each has plenty of things that isn't legal in the other, and C++ has a lot of features that C doesn't have, to the point that I suspect writing in the subset (or intersection, rather) of C and C++ results in what modern C++ devs would consider non-ergonomic, non-idiomatic code.