The issue is that "const" didn't exist in the earliest forms of C... and even when it became available not everybody started using it.

So you might have a function that doesn't have proper "const" qualifications in its prototype like:

  void my_log(char *message);
and then call-sites like:

  my_log("Hello, World!");
...and that needed to stay compiling.

Some C projects have been ready for this for years due to supporting being compiled as C++.