https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70141

Barry Revzin <barry.revzin at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |barry.revzin at gmail dot com

--- Comment #13 from Barry Revzin <barry.revzin at gmail dot com> ---
Markus - note that clang warns about the specialization, but compiles the
example anyway which actually requires the selection of the supposedly
unselectable specialization.

This example:

template <typename T> struct X {};
template <typename T> struct X<typename T::foo> {};

isn't related, since here T is a non-deduced context (nested-name-specifier),
but OP's example is:

    template <typename U>
    struct predicate<typename outer<T>::template inner<U>>

U is not in the nested-name-specifier, T is... but T isn't being deduced.

Reply via email to