LINUX.ORG.RU

История изменений

Исправление www_linux_org_ru, (текущая версия) :

напомню, что разговор шел о том, можно ли сделать какое-то *конкретное* объединение неразмеченным; и квазимото писал Человеческое метапрограммирование (комментарий)

Правда, можно сделать объединение неразмеченным при условии, что все поля объединения боксированы/тегированы и содержат всю информацию о своих типах в рантайме

я показал, что его условие вовсе не единственно; именно, можно сделать типобезопасное объединение неразмеченным, если положить туда значения экзистенциального типа (по-разному конкретизированного)

Только сделать нормально, без UB при любом составе юниона (включая шаблонные классы) и любом обращении с ним (за исключением прямого засирания памяти).

такой вопрос, по-моему, там не стоял, но это интересный, хотя наверно и непрактичный вопрос — примерно сколько типовой информации можно стереть из рантайма

Исходная версия www_linux_org_ru, :

напомню, что разговор шел о том, можно ли сделать какое-то *конкретное* объединение неразмеченным; и квазимото писал Человеческое метапрограммирование (комментарий)

Правда, можно сделать объединение неразмеченным при условии, что все поля объединения боксированы/тегированы и содержат всю информацию о своих типах в рантайме

я показал, что его условие вовсе не единственно; именно, можно сделать объединение неразмеченным, если положить туда значения экзистенциального типа (по-разному конкретизированного)

Только сделать нормально, без UB при любом составе юниона (включая шаблонные классы) и любом обращении с ним (за исключением прямого засирания памяти).

такой вопрос, по-моему, там не стоял, но это интересный, хотя наверно и непрактичный вопрос — примерно сколько типовой информации можно стереть из рантайма