Skip to content

Commit

Permalink
Minor test improvements (#4309)
Browse files Browse the repository at this point in the history
  • Loading branch information
StephanTLavavej committed Jan 17, 2024
1 parent 3eac329 commit 7b7280c
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 8 deletions.
20 changes: 13 additions & 7 deletions tests/libcxx/expected_results.txt
Original file line number Diff line number Diff line change
Expand Up @@ -347,6 +347,11 @@ std/thread/futures/futures.promise/set_value_at_thread_exit_const.pass.cpp FAIL
std/thread/futures/futures.promise/set_value_at_thread_exit_void.pass.cpp FAIL
std/thread/futures/futures.task/futures.task.members/make_ready_at_thread_exit.pass.cpp FAIL

# LWG-3343 "Ordering of calls to unlock() and notify_all() in Effects element of notify_all_at_thread_exit() should be reversed" (Open)
# libc++ speculatively implements LWG-3343. If we wanted to do the same thing,
# we'd need to reverse the order of the _Mtx_unlock() and _Cnd_broadcast() calls in xnotify.cpp.
std/thread/thread.condition/notify_all_at_thread_exit_lwg3343.pass.cpp SKIPPED


# *** C1XX COMPILER BUGS ***
# DevCom-409222 VSO-752709 "Constructing rvalue reference from non-reference-related lvalue reference"
Expand Down Expand Up @@ -524,6 +529,12 @@ std/time/time.syn/formatter.year.pass.cpp:2 FAIL
std/ranges/range.factories/range.repeat.view/iterator/minus.pass.cpp:0 FAIL
std/ranges/range.factories/range.repeat.view/iterator/minus.pass.cpp:1 FAIL

# GH-4268: <sstream>, <syncstream>: Buffer types assume that allocated pointers are not modified by users
std/input.output/string.streams/stringbuf/stringbuf.members/str.pass.cpp FAIL
std/input.output/string.streams/stringbuf/stringbuf.members/view.pass.cpp FAIL
std/input.output/syncstream/syncbuf/syncstream.syncbuf.cons/dtor.pass.cpp FAIL
std/input.output/syncstream/syncbuf/syncstream.syncbuf.members/emit.pass.cpp FAIL


# *** VCRUNTIME BUGS ***
# DevCom-10373274 VSO-1824997 "vcruntime nothrow array operator new falls back on the wrong function"
Expand Down Expand Up @@ -693,7 +704,8 @@ std/input.output/filesystems/class.path/range_concept_conformance.compile.pass.c
# libc++ assumes long double is at least 80-bit; also affected by LWG-2381
std/localization/locale.categories/category.numeric/locale.num.get/facet.num.get.members/get_long_double.pass.cpp FAIL

# libc++ speculatively implements LWG-3645
# libc++ speculatively implemented an old proposed resolution for LWG-3645.
# This test is bogus according to the wording that was ultimately accepted for C++23.
std/strings/basic.string/string.capacity/resize_and_overwrite.pass.cpp FAIL

# This test assumes that array<int, 0> is not const-default-constructible.
Expand Down Expand Up @@ -1086,12 +1098,6 @@ std/utilities/template.bitset/bitset.members/op_and_eq.pass.cpp FAIL
std/utilities/template.bitset/bitset.members/op_or_eq.pass.cpp FAIL
std/utilities/template.bitset/bitset.members/right_shift_eq.pass.cpp FAIL

# Not analyzed. Assertion failed: _CrtIsValidHeapPointer(block)
std/input.output/string.streams/stringbuf/stringbuf.members/str.pass.cpp FAIL
std/input.output/string.streams/stringbuf/stringbuf.members/view.pass.cpp FAIL
std/input.output/syncstream/syncbuf/syncstream.syncbuf.cons/dtor.pass.cpp FAIL
std/input.output/syncstream/syncbuf/syncstream.syncbuf.members/emit.pass.cpp FAIL

# Not analyzed. In debug mode, looks like a proxy object unexpectedly exhausts an 80-byte buffer.
# In release mode, fails in a later assertion that appears to be testing libc++-specific behavior.
std/input.output/string.streams/istringstream/istringstream.members/str.allocator_propagation.pass.cpp FAIL
Expand Down
2 changes: 1 addition & 1 deletion tests/utils/stl/util.py
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ def nullContext(value):

def makeReport(cmd, out, err, rc):
report = "Command: \"%s\"\n" % "\" \"".join(cmd)
report += "Exit Code: %d\n" % rc
report += f"Exit Code: {rc} (0x{rc:X})\n"
# Replacing CRLFs with LFs avoids ugly double newlines when this is displayed in Azure Pipelines.
if out:
report += "Standard Output:\n--\n%s--\n" % out.replace("\r\n", "\n")
Expand Down

0 comments on commit 7b7280c

Please sign in to comment.