Хорошее уточнение. Пожалуй, даже лучше начального поста. Если
вспомнить о том, что это макрос и он разворачивается, посмотреть
его тело - ничего неожиданного не будет. Но ожидаемая логика работы как для функции: сравниваем два значения, брём
максимальное и после этого увеличиваем сравниваемые. ИНС
сформулировал очень правильную рекомендацию: "Макросы не должны
использоваться с выражениями, которые имеют побочные эффекты". PS:
А есть ещё люди, которые макросы пишут маленькими буквами, подключаемые библиотеки, и т.п.