Вы можете получить аналогичный результат, если проанализируете все файлы .c, извлечете все #include
s, а затем создадите огромный файл, который сначала перечисляет все включенные файлы, а затем перечисляет все остальное содержимое этих файлов .c.
Таким образом, у вас есть весь код в одном модуле перевода, что позволяет компилятору видеть весь код одновременно и выполнять более эффективные оптимизации.Это актуально для большинства C-компиляторов, но новейшие компиляторы имеют так называемую генерацию кода времени компоновки , которая позволяет компилятору видеть код нескольких блоков перевода одновременно (во время компоновки) и генерировать лучший код даже безтрюк слияния.