Мне какой-то куб для Renesas вспомнился, лет 6 тому назад. Они хвалились, что у них код компилится сразу, как его пишешь. В итоге когда допишешь -- он сразу скомпилирован. Ну и ошибки сразу красным подсвечивает (ещё б сделали, чтоб ошибочный код сразу не вводился...) Сомнительная технология, вспоминая, что результат компиляции может зависеть от порядка в котором выражения попадают в компилятор. Вон на хабре с вчерашнего дня висит страшилка про hidden friends в C++ (
https://habr.com/ru/post/472780/). Оттуда же по-моему есть ссылка на то как это можно использовать:
http://b.atch.se/ Ну и понятно, шаблон инстанцируется в момент первого использования (и подгаживает в объемлющий его неймспейс), а порядок использования может зависеть от того в каком порядке программист строчки написал. И с C-макросами такая же фигня. Что ж теперь, после нажатия любой клавиши на клавиатуре всё с нуля перекомпилировать?