In sorting elements can compare with themselves and sometimes assert further down the line was triggered. The changes are somewhat NFC, which explains the lack of test coverage. libc++ has a debug mode that enables extra precondition checking. When Clang is built with libc++ in that special mode, a few of Clang's tests would fail with the libc++ assertion because Clang was not honoring the preconditions for std::stable_sort. However, Clang would not hit the precondition failure with any release mode STL, so the changes have no impact on users beyond ones in this very special circumstance. Differential Revision: https://reviews.llvm.org/D155809
140 KiB
140 KiB