Специализация шаблона является более специализированной, чем другая, если каждый список аргументов, соответствующий первому, также соответствует второму, но не наоборот.
При взгляде на X<int, T*, 10>
и X<T, T*, I>
:
X<int, float*, 10>
соответствует первому, но не второму.
X<float, float*, 10>
соответствует второму, но не первому.
Поэтому ни один из них не является более специализированным, чем другой, и создание экземпляра шаблона, соответствующего обеим специализациям, не будет компилироваться.