Functions which are local to a translation unit should either be marked as static, or be in an anonymous namespace.