It is allowed to add template specializations for any standard library class (since C++20)template to the namespace std only if the declaration depends on at least one program-defined type and the specialization satisfies all requirements for the original template, except where such specializations are prohibited.


It is undefined behavior to declare a full or partial specialization of any member class template of a standard library class or class template.


일반적으로는 OK

멤버 클래스 특수화는 UB

구체적으로는 개별 클래스마다 조건이 다름


https://en.cppreference.com/w/cpp/language/extending_std