[diff.cpp20.memory]

# Annex C (informative) Compatibility [[diff]](./#diff)

## C.2 C++ and ISO C++ 2020 [[diff.cpp20]](diff.cpp20#memory)

### C.2.9 [[mem]](mem "20 Memory management library"): memory management library [diff.cpp20.memory]

[1](#1)

[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/compatibility.tex#L659)

**Affected subclause:** [[allocator.traits.general]](allocator.traits.general)  


**Change:** Forbid partial and explicit program-defined specializations
of allocator_traits[.](#1.sentence-1)

  


**Rationale:** Allow addition of allocate_at_least to allocator_traits,
and potentially other members in the future[.](#1.sentence-2)

  


**Effect on original feature:** Valid C++ 2020 code
that partially or explicitly specializes allocator_traits is ill-formed with no diagnostic required in this revision of C++[.](#1.sentence-3)
