Информация об изменениях

Сообщение Re[4]: Хитрый оператор преобразования типа от 29.06.2022 13:21

Изменено 29.06.2022 13:22 Videoman

Re[4]: Хитрый оператор преобразования типа
Здравствуйте, rg45, Вы писали:

R>...

R>Выходит, что работать должен и твой вариант, и даже без "A::", а просто: "return operator type_t()". Похоже, msvc просто не может разрулить между conversion function и conversion function template.

Похоже ты прав и gcc и clang с тобой согласны.
Сейчас просто активно начал портировать код, что бы он работал одновременно и на Linux и на Windows, при том, что изначально код писался под Windows. Периодически наступаю на такие косяки, то с одной, то с другой стороны. Что интересно, MS в большинстве случаев работает в более расслабленном стиле, сам до всего догадывается и многое прощает, но видимо от этого и глючит в неопределённых, с точки зрения стандарта, случаях.
Re[4]: Хитрый оператор преобразования типа
Здравствуйте, rg45, Вы писали:

R>...

R>Выходит, что работать должен и твой вариант, и даже без "A::", а просто: "return operator type_t()". Похоже, msvc просто не может разрулить между conversion function и conversion function template.

Похоже ты прав и gcc и clang с тобой согласны.
Сейчас просто активно начал портировать код, что бы он работал одновременно и на Linux и на Windows, при том, что изначально код писался под Windows. Периодически наступаю на такие косяки, то с одной, то с другой стороны. Что интересно, MS в большинстве случаев работает в более расслабленном стиле, сам до всего догадывается и многое прощает, но видимо от этого и глючит в противоречивых, с точки зрения стандарта, случаях.