[PATCH] D23001: XFAIL one sanitizer symbolizer test for FreeBSD

Dimitry Andric via llvm-commits llvm-commits at lists.llvm.org
Sun Jul 31 09:05:07 PDT 2016


dim created this revision.
dim added reviewers: emaste, rnk, zaks.anna.
dim added a subscriber: llvm-commits.
Herald added subscribers: kubabrecka, emaste.

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).

https://reviews.llvm.org/D23001

Files:
  lib/sanitizer_common/tests/sanitizer_symbolizer_test.cc

Index: lib/sanitizer_common/tests/sanitizer_symbolizer_test.cc
===================================================================
--- lib/sanitizer_common/tests/sanitizer_symbolizer_test.cc
+++ lib/sanitizer_common/tests/sanitizer_symbolizer_test.cc
@@ -62,7 +62,9 @@
   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


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D23001.66244.patch
Type: text/x-patch
Size: 618 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160731/b1d92d8f/attachment.bin>


More information about the llvm-commits mailing list