Метод доказательства "от противного" знаешь? Так вот, поставим вопрос по-другому: почему такой код
не должен компилироваться? В языке есть операция "запятая", результатом которой является результат последнего операнда. Что там в последнем операнде делается? В первом
a присвоили 3, во втором увеличили его еще на три. Результат = 6, где подвох?