Skip to content

Conversation

@StephanTLavavej
Copy link
Member

Originally, _SILENCE_STDEXT_HASH_DEPRECATION_WARNINGS was the escape hatch to allow <hash_map> and <hash_set> to be included. #2996 extended this to restore <xhash>'s inclusion of <cstring>/<cwchar>/<xstring> and defining common stdext machinery. However, I attempted to unconditionally remove the non-Standard using-declaration that provided std::hash_compare. Unfortunately, there are still projects depending on this. 😿 We can preserve the throughput improvement and give affected projects a way out by extending the escape hatch to also provide the using-declaration.

Also, #2998 got <functional> to stop including <memory> in C++17 mode. We're seeing at least one affected project (Qt5) where fixing the source may be difficult. We can add a targeted escape hatch for this inclusion, again preserving the throughput improvement by default.

@StephanTLavavej StephanTLavavej added the enhancement Something can be improved label Aug 11, 2022
@StephanTLavavej StephanTLavavej requested a review from a team as a code owner August 11, 2022 22:48
@StephanTLavavej StephanTLavavej self-assigned this Aug 11, 2022
@StephanTLavavej
Copy link
Member Author

I'm mirroring this to the MSVC-internal repo - please notify me if any further changes are pushed.

@StephanTLavavej StephanTLavavej merged commit 1cc751a into microsoft:main Aug 12, 2022
@StephanTLavavej StephanTLavavej deleted the escape-hatches branch August 12, 2022 06:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement Something can be improved

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants