diff --git a/drd/tests/Makefile.am b/drd/tests/Makefile.am index 20c72c243..5df76150e 100644 --- a/drd/tests/Makefile.am +++ b/drd/tests/Makefile.am @@ -6,6 +6,7 @@ dist_noinst_SCRIPTS = \ filter_annotate_barrier_xml \ filter_error_count \ filter_error_summary \ + filter_lambda \ filter_stderr \ filter_stderr_and_thread_no \ filter_stderr_and_thread_no_and_offset \ diff --git a/drd/tests/filter_lambda b/drd/tests/filter_lambda new file mode 100755 index 000000000..248132dc8 --- /dev/null +++ b/drd/tests/filter_lambda @@ -0,0 +1,7 @@ +#! /bin/sh + +./filter_stderr | + +sed -e 's/\$_0/LAMBDA/' | +sed -e 's/{lambda()#1}/LAMBDA/' + diff --git a/drd/tests/std_thread.cpp b/drd/tests/std_thread.cpp index 27f9e2caa..7114e401e 100644 --- a/drd/tests/std_thread.cpp +++ b/drd/tests/std_thread.cpp @@ -21,7 +21,7 @@ int main(int argc, char** argv) return 0; } -#if defined(__GNUC__) && __GNUC__ -0 < 6 +#if defined(__GNUC__) && __GNUC__ -0 < 6 && (defined(_GLIBCXX_THREAD_ABI_COMPAT) && _GLIBCXX_THREAD_ABI_COMPAT) // // From libstdc++-v3/src/c++11/thread.cc // diff --git a/drd/tests/std_thread2.cpp b/drd/tests/std_thread2.cpp index 5a4aff929..eef5ba30f 100644 --- a/drd/tests/std_thread2.cpp +++ b/drd/tests/std_thread2.cpp @@ -26,7 +26,7 @@ int main(int argc, char** argv) return 0; } -#if defined(__GNUC__) && __GNUC__ -0 < 6 +#if defined(__GNUC__) && __GNUC__ -0 < 6 && (defined(_GLIBCXX_THREAD_ABI_COMPAT) && _GLIBCXX_THREAD_ABI_COMPAT) // // From libstdc++-v3/src/c++11/thread.cc // diff --git a/drd/tests/std_thread2.stderr.exp b/drd/tests/std_thread2.stderr.exp index bb391c571..818b5cf57 100644 --- a/drd/tests/std_thread2.stderr.exp +++ b/drd/tests/std_thread2.stderr.exp @@ -1,7 +1,7 @@ Thread 2: Conflicting store by thread 2 at 0x........ size 4 - at 0x........: main::{lambda()#1}::operator()() const (std_thread2.cpp:21) + at 0x........: main::LAMBDA::operator()() const (std_thread2.cpp:21) Allocation context: BSS section of std_thread2 Done. diff --git a/drd/tests/std_thread2.vgtest b/drd/tests/std_thread2.vgtest index d2d460346..74917b289 100644 --- a/drd/tests/std_thread2.vgtest +++ b/drd/tests/std_thread2.vgtest @@ -1,4 +1,4 @@ prereq: test -e std_thread2 && ./supported_libpthread vgopts: --check-stack-var=yes --show-confl-seg=no --num-callers=1 --default-suppressions=no --suppressions=std_thread2.supp prog: std_thread2 -stderr_filter: filter_stderr +stderr_filter: filter_lambda