Есть две библиотеки, в одной определён полиморфный тип Тип1, в другой определён полиморфный тип Тип2. Каждая из библиотек выдаёт наружу std::type_index от своего Типа. Дальше обе библиотеки компонуются с исполняемым модулем, а в исполняемом модуле берутся эти std::type_indexы и сравниваются.
Вопрос, существует ли гарантия, что std::type_indexы из разных библиотек находятся в одном «адресном пространстве»? Т.е., если Тип1 и Тип2 это один и тот же тип, то эти std::type_indexы из разных библиотек будут равны, а если Тип1 и Тип2 это разные типы, то std::type_indexы покажут отрицательный ответ при сравнении на равенство. Даётся ли такая гарантия стандартом?