Size: a a a

2021 January 13

IB

Ivan Balanar in pro.net
EgorBo
@ivan_balanar давай, что должен компилятор сделать?
кинуть ошибку, думаю.
источник

I

IdiocyAcceptance in pro.net
Ivan Balanar
у него есть все данные для того, что бы сделать нужные выводы.
Ну, ещё раз. Это не константы. Второе - твой кейс очень простой.
источник

I

IdiocyAcceptance in pro.net
Видишь разницу?
источник

I

IdiocyAcceptance in pro.net
Первое - ошибка
источник

I

IdiocyAcceptance in pro.net
Второе - реальный кейс
источник

I

IdiocyAcceptance in pro.net
Точнее, рабочий
источник

I

IdiocyAcceptance in pro.net
Как тебе там компилятор поймёт что к чему?
источник

I

IdiocyAcceptance in pro.net
А, лол. Ты уже скинул :(
источник

IB

Ivan Balanar in pro.net
штош, спишу на то, что только константы предоставляют подобную гарантию, а readonly что-то там просто следуют стратегии инициализации "сверху вниз"
источник

FK

Fredi Kats in pro.net
А порядок сверх вниз гарантируется? 🤔
источник

IB

Ivan Balanar in pro.net
Fredi Kats
А порядок сверх вниз гарантируется? 🤔
по-мойму да. там еще от модификаторов а-ля статик это зависит, если не ошибаюсь.
источник

IB

Ivan Balanar in pro.net
A field initializer cannot refer to other instance fields. - вот отсюда https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/classes-and-structs/fields
источник

P

P9oS 🦠 in pro.net
@egorbo а что здесь не так
источник

P

P9oS 🦠 in pro.net
источник

P

P9oS 🦠 in pro.net
L0007, L000b не лишние?
источник

VK

Vitaliy ◀️TriΔng3l▶️... in pro.net
P9oS 🦠
L0007, L000b не лишние?
L000b не лишнее, потому что для одного и то же числа надо сделать и >>>31, и >>1, а L0007 выглядит сомнительно o_O
источник

VK

Vitaliy ◀️TriΔng3l▶️... in pro.net
Как будто imul с её фиксированным входным регистром костылём прикручена к выделению регистров
источник

VK

Vitaliy ◀️TriΔng3l▶️... in pro.net
Типа пост-SSAшный проход выделил edx, а на вход надо eax, вот мы и скопируем. Хотя, eax и edx тут клоббернутся, так что, как-то должно учитываться при выделении регистров, всё равно
источник

VK

Vitaliy ◀️TriΔng3l▶️... in pro.net
Ну или типа раз загадим edx, то можно его и на вход использовать 🤷‍♂️ Но eax тоже загадим, но кого это волнует, не повезло
источник

P

P9oS 🦠 in pro.net
Vitaliy ◀️TriΔng3l▶️ Kuzmin
L000b не лишнее, потому что для одного и то же числа надо сделать и >>>31, и >>1, а L0007 выглядит сомнительно o_O
здесь либо то, либо то лишнее. Прост повторяется инструкция зачем то два раза
источник