Implicit declarations are a classic!

Current GCC and clang error on them by default now, but that's a rather recent change.

GCC warns by default since version 5, released more than a decade ago.

My production binary was built on Oracle Linux 5, with gcc 4.1.2.

That version would at least warn with -Wall.