История изменений
Исправление wandrien, (текущая версия) :
Решение может существовать только в привязке к тому, что собой представляет конкретная платформа.
Поэтому стандартом сишечки не покрывается.
То, что они сравнение произвольных указателей сделали UB вместо IDB, ну так в стандарте сишечки многое через жопу.
Если в указателе есть «лишние» биты, это в любом случае требуется знать, сишечки сама по себе это не решает.
В общем, если тебе не нравится UB, то обмазываемся ifdef-ами на предмет платформы и компилятора и сравниваем указатели ассемблерными вставками.
Исправление wandrien, :
Решение может существовать только в привязке к тому, что собой представляет конкретная платформа.
Поэтому стандартом сишечки не покрывается.
То, что они сравнение произвольных указателей сделали UB вместо IDB, ну так в стандарте сишечки многое через жопу.
Если в указателе есть «лишние» биты, это в любом случае требуется знать, сишечки сама по себе это не решает.
В общем, если тебе не нравится UB, то обмазываются ifdef-ами на предмет платформы и компилятора и сравниваем указатели ассемблерными вставками.
Исходная версия wandrien, :
Решение может существовать только в привязке к тому, что собой представляет конкретная платформа.
Поэтому стандартом сишечки не покрывается.
То, что они сравнение произвольных указателей сделали UB вместо IDB, ну так в стандарте сишечки многое через жопу.
Если в указателе есть «лишние» биты, это в любом случае требуется знать, сишечки сама по себе это не решает.
В лбщем, если тебе не нравится UB, то обмазываются ifdef-ами на предмет платформы и сравниваем указатели ассемблерными вставками.