Annex G (informative) Ill-formed, no diagnostic required [ifndr]

G.10 [temp]: Templates [ifndr.temp]

G.10.12[ifndr:temp.expl.spec.unreachable.declaration]
Specified in: [temp.expl.spec]

If an implicit instantiation of a template would occur and there is an unreachable explicit specialization that would have matched, the program is ill-formed, no diagnostic required.
[Example 1: 

Source file "a.h":template <typename T> struct S {};

Translation unit #2:#include "a.h" template <> struct S<int> { int oops; }; // #1

Translation unit #3:#include "a.h" S<int> s; // IFNDR, #1 is not reachable but would have matched — end example]