Вопрос вызван этой статьей
https://m.habr.com/ru/post/124404/
Ссылка на фиддл
https://dotnetfiddle.net/uFhUvl
В коде на фиддле метод IncrementX метод обращается к автопроперти X значимого типа int и инкрементит его, т.е. чисто логически, сначала геттер должен вернуть не ссылку на поле, а копию поля, а дальше операцией инкримента меняется значение копии. В итоге как минимум в результате должно было вывестись 5, а не 6, а как максимум должен был упасть эксепшен
"Cannot modify the return value of 'что-то тут' because it is not a variable".
Но по факту в результате выводится 6, а не 5, и нет никаких эксепшенов. Кто-нибудь может объяснить?