Skip to content

Commit bbb6739

Browse files
Partially remove workaround for DevCom-1559808 (#3975)
Remove workarounds for DevCom-1559808, relabeling some as now working around DevCom-10452846.
1 parent b091f2a commit bbb6739

File tree

3 files changed

+2
-18
lines changed

3 files changed

+2
-18
lines changed

stl/inc/algorithm

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8288,13 +8288,13 @@ namespace ranges {
82888288
}
82898289

82908290
// divide and conquer by quicksort
8291-
#if defined(__clang__) || defined(__EDG__) // TRANSITION, DevCom-1559808
8291+
#if defined(__clang__) || defined(__EDG__) // TRANSITION, DevCom-10452846
82928292
auto [_Mid_first, _Mid_last] = _Partition_by_median_guess_common(_First, _Last, _Pred, _Proj);
82938293
#else // ^^^ no workaround / workaround vvv
82948294
auto _Mid = _Partition_by_median_guess_common(_First, _Last, _Pred, _Proj);
82958295
auto _Mid_first = _Mid.begin();
82968296
auto _Mid_last = _Mid.end();
8297-
#endif // TRANSITION, DevCom-1559808
8297+
#endif // TRANSITION, DevCom-10452846
82988298

82998299
_Ideal = (_Ideal >> 1) + (_Ideal >> 2); // allow 1.5 log2(N) divisions
83008300

stl/inc/ranges

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -5102,13 +5102,7 @@ namespace ranges {
51025102
return *this;
51035103
}
51045104

5105-
#if defined(__clang__) || defined(__EDG__) // TRANSITION, DevCom-1559808
51065105
auto [_Begin, _End] = _RANGES search(subrange{_Current, _Last}, _Parent->_Pattern);
5107-
#else // ^^^ no workaround / workaround vvv
5108-
auto _Match = _RANGES search(subrange{_Current, _Last}, _Parent->_Pattern);
5109-
auto _Begin = _Match.begin();
5110-
auto _End = _Match.end();
5111-
#endif // TRANSITION, DevCom-1559808
51125106
if (_Begin != _Last && _RANGES empty(_Parent->_Pattern)) {
51135107
++_Begin;
51145108
++_End;
@@ -5154,13 +5148,7 @@ namespace ranges {
51545148

51555149
constexpr subrange<iterator_t<_Vw>> _Find_next(iterator_t<_Vw> _It) {
51565150
const auto _Last = _RANGES end(_Range);
5157-
#if defined(__clang__) || defined(__EDG__) // TRANSITION, DevCom-1559808
51585151
auto [_Begin, _End] = _RANGES search(subrange{_It, _Last}, _Pattern);
5159-
#else // ^^^ no workaround / workaround vvv
5160-
auto _Match = _RANGES search(subrange{_It, _Last}, _Pattern);
5161-
auto _Begin = _Match.begin();
5162-
auto _End = _Match.end();
5163-
#endif // TRANSITION, DevCom-1559808
51645152
if (_Begin != _Last && _RANGES empty(_Pattern)) {
51655153
++_Begin;
51665154
++_End;

tests/libcxx/expected_results.txt

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -381,10 +381,6 @@ std/utilities/meta/meta.unary/meta.unary.prop/is_constructible.pass.cpp:0 FAIL
381381
std/algorithms/alg.sorting/alg.sort/partial.sort/partial_sort.pass.cpp:0 FAIL
382382
std/algorithms/alg.sorting/alg.sort/partial.sort/partial_sort_comp.pass.cpp:0 FAIL
383383

384-
# DevCom-1559808: (structured bindings for `subrange` in a constant expression)
385-
# Skipped as this sometimes emits "fatal error C1001: Internal compiler error." with a crash dialog.
386-
std/ranges/range.utility/range.subrange/structured_bindings.pass.cpp:0 SKIPPED
387-
388384
# DevCom-1436243 constexpr new initialized array
389385
std/utilities/smartptr/unique.ptr/unique.ptr.class/unique.ptr.modifiers/reset_self.pass.cpp:0 FAIL
390386
std/utilities/smartptr/unique.ptr/unique.ptr.create/make_unique.array.pass.cpp:0 FAIL

0 commit comments

Comments
 (0)