summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDimitry Andric <dimitry@andric.com>2016-08-02 06:42:41 +0000
committerDimitry Andric <dimitry@andric.com>2016-08-02 06:42:41 +0000
commitbb816f8d4a9d0f8a47f701ef9019b23e7ea72776 (patch)
treea978151ef04e4d57c2ea74180f2624616e6ee899
parent95277fbc5a050588234bc4e2a52d7902e663e3b1 (diff)
downloadcompiler-rt-bb816f8d4a9d0f8a47f701ef9019b23e7ea72776.tar.gz
Merging r277297:
------------------------------------------------------------------------ r277297 | dim | 2016-07-31 21:27:46 +0200 (Sun, 31 Jul 2016) | 21 lines XFAIL one sanitizer symbolizer test for FreeBSD Summary: Due to a QoI issuse in FreeBSD's libcxxrt-based demangler, one sanitizer symbolizer test consistently appears to fail: Value of: DemangleSwiftAndCXX("foo") Actual: "float" Expected: "foo" This is because libcxxrt's __cxa_demangle() incorrectly demangles the "foo" identifier to "float". It should return an error instead. For now, XFAIL this particular test for FreeBSD, until we can fix libcxxrt properly (which might take some time to coordinate with upstream). Reviewers: rnk, zaks.anna, emaste Subscribers: emaste, llvm-commits, kubabrecka Differential Revision: https://reviews.llvm.org/D23001 ------------------------------------------------------------------------ git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/branches/release_39@277423 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/sanitizer_common/tests/sanitizer_symbolizer_test.cc2
1 files changed, 2 insertions, 0 deletions
diff --git a/lib/sanitizer_common/tests/sanitizer_symbolizer_test.cc b/lib/sanitizer_common/tests/sanitizer_symbolizer_test.cc
index 3d5678ab7..4c4d2a8c3 100644
--- a/lib/sanitizer_common/tests/sanitizer_symbolizer_test.cc
+++ b/lib/sanitizer_common/tests/sanitizer_symbolizer_test.cc
@@ -62,7 +62,9 @@ TEST(Symbolizer, DemangleSwiftAndCXX) {
EXPECT_STREQ("_TtSd", DemangleSwiftAndCXX("_TtSd"));
// Check that the rest demangles properly.
EXPECT_STREQ("f1(char*, int)", DemangleSwiftAndCXX("_Z2f1Pci"));
+#if !SANITIZER_FREEBSD // QoI issue with libcxxrt on FreeBSD
EXPECT_STREQ("foo", DemangleSwiftAndCXX("foo"));
+#endif
EXPECT_STREQ("", DemangleSwiftAndCXX(""));
}
#endif