Вы можете обнаружить, что если вы включите заголовок, который объявил flip()
- как вы, конечно, должны - тогда splint
не будет жаловаться. Вы также должны объявить blah()
в заголовке.
Я не совсем уверен, что это объяснение, потому что blah()
вообще не используется (хотя он использует flip()
), и вы не упоминаете splint
, жалующийся на это.
Однако рекомендуется делать каждую функцию (в C) static
до тех пор, пока вы не продемонстрируете, что она необходима вне исходного файла, а затем убедитесь, что есть заголовок, который объявляет функцию, и что заголовок используется в файле, который определяет функцию, и в каждом файле, который использует функцию.
В C ++ «каждая функция должна быть static
», совет становится «каждая функция должна быть определена в анонимном пространстве имен».