Это продолжение моего предыдущего вопроса:Может ли ссылка пересылки быть псевдонимом с шаблоном псевдонима?
Can an identity alias template be a forwarding reference?
кажется, что следующий код работает как Clang 3.7.0 (demo) и GCC 6.0.0 (demo):
template <class T>
using forwarding_reference = T&&;
template <class T>
void foo(forwarding_reference<T>) {}
int main()
{
int i{};
foo(i);
foo(1);
}
Являются ли компиляторы правильными для замены шаблона псевдонима для ссылки на пересылку, и это может быть причудливым способом написания?
Как это не совсем тот же вопрос с точно таким же ответом? – Barry
@Barry Это не дубликат. – Axalo
@MarcAndreson Это ** абсолютно ** дубликат. Возникает вопрос: может ли шаблон псевдонима быть разрешен как ссылка для пересылки? Ответ Колумба здесь предполагает, что ответ Анже на исходный вопрос неверен. Было бы лучше иметь оба ответа в одном месте, чтобы сайт мог получить ответ на этот вопрос, потому что это хороший и интересный вопрос. – Barry