Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Как раз для этого нужно API для доступа к синтаксическому дереву во время комплляции (т.е. синтаксические макросы). Но в cи (и особенно c++) не ищут легких путей:)
Если в макросе х — не константа, а чистая функция, то имеет ли право компилятор заменить x * 0 на 0, так как для внешнего наблюдателя ничего не изменится?
SFINAE для бедных упоротых.
Обнаруживаем целочисленные константные выражения в макросе [вместе с Линусом]