Нет противоречия.
Если объявлена явная специализация или частичная специализация initializer_list, программа сформирована неправильно.
Означает, что вы не можете объявить специализацию. Сам компилятор может исключать специализации std::initializer_list
Проблема, которая может вызывать у вас проблему, заключается в том, что конкретный тип, который вы получаете из шаблона, называется специализацией. Об этом и говорится в первом абзаце. Во втором абзаце говорится о фактическом определении / объявлении специализации для std::initializer_list