Это связано с приоритетом оператора. Взгляните на этот стол .
Оператор уменьшения / приращения имеет приоритет над арифметическими операциями. Это будет проанализировано как x-- - y
.
Чтобы исправить мой ответ: Сначала парсер сопоставляется с самым длинным токеном, поэтому --
выбирается из арифметики -
. В результате чего выражение анализируется как x-- - y