New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[allocator.requirements.general] The meaning of "parameterized in terms of allocators" seems unclear #5528
Comments
No, there is requirement imposed by that wording. It's just telling you that you can use allocators with them. |
i.e. they have a template parameter that gets substituted with an allocator type. If those class templates have a precondition that their |
So... is the current wording implying that |
No. Like I said, there is no normative requirement being imposed here. It's just an informative remark saying "hey, there are types in the library that have a template parameter where you can put an allocator". It's not saying "and if you do it wrong you will die". The list of types is incomplete, which should be fixed, but you should not be trying to infer some deep meaning from this sentence, or from the fact the list is incomplete. |
Oh I see. Thank you for interpretation! The Cpp17Allocator requirement is seldom used in the library spec. Is it intended that most allocator-aware utilities (e.g. containers) don't actually require their |
Yes. Those places use the magic word "allocator", which is defined in [allocator.requirements.general]p1 (note italics). So, anywhere we say "allocator" we mean a class satisfying [allocator.requirements.general]. |
[allocator.requirements.general]/1 says
It's not very clear for me whether this sentence imposes some normative requirements, or if it does, what the requirements are, and [syncstream] is not yet covered.
Perhaps it means
Not sure whether an LWG issue is needed.
The text was updated successfully, but these errors were encountered: