История изменений
Исправление r--r--r--, (текущая версия) :
не смогает, и также без понятных мне причин
Чтобы не было хрен пойми какого поведения из-за мешанины перегрузок из разных неймспейсов. Очевидно же.
Ну и по ОП-посту:
Этому есть какие-то объяснения?
У тебя рекурсивная зависимость между выводом типа функции и выводом аргумента функции - чтобы инстанцировать шаблонную функцию, надо знать типы аргументов, а чтобы конвертировать brace-enclosed initializer list в конкретный тип, надо знать тип функции, включающий в сигнатуру типы аргументов.
Исправление r--r--r--, :
не смогает, и также без понятных мне причин
Чтобы не было хрен пойми какого поведения из-за мешанины перегрузок из разных неймспейсов. Очевидно же.
Ну и по ОП-посту:
Этому есть какие-то объяснения?
У тебя рекурсивная зависимость между выводом типа функции выводом аргумента функции - чтобы инстанцировать шаблонную функцию, надо знать типы аргументов, а чтобы конвертировать brace-enclosed initializer list в конкретный тип, надо знать тип функции, включающий в сигнатуру типы аргументов.
Исправление r--r--r--, :
не смогает, и также без понятных мне причин
Чтобы не было хрен пойми какого поведения из-за мешанины перегрузок из разных неймспейсов. Очевидно же.
Ну и по ОП-посту:
Этому есть какие-то объяснения?
У тебя рекурсивная зависимость между выводом типа функции выводом аргумента функции.
Исправление r--r--r--, :
не смогает, и также без понятных мне причин
Чтобы не было хрен пойми какого поведения из-за мешанины перегрузок из разных неймспейсов. Очевидно же.
Ну и по ОП-посту:
Этому есть какие-то объяснения?
func({...});
Тип функции будет выведен после вывода типа аргументов. Тип аргумента неизвестен. Угадывать его тип перебором всего множество возможных кандидатов на подходящий никто конечно же не будет.
Исходная версия r--r--r--, :
не смогает, и также без понятных мне причин
Чтобы не было хрен пойми какого поведения из-за мешанины перегрузок из разных неймспейсов. Очевидно же.