From: Ben Pfaff Date: Thu, 16 Dec 2021 02:56:45 +0000 (-0800) Subject: perl-module: Skip memory test if Address Sanitizer is in use. X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?p=pspp;a=commitdiff_plain;h=8a7698655f6f01e83c99a0eab7597dc5ce7a64ca perl-module: Skip memory test if Address Sanitizer is in use. Otherwise, Address Sanitizer produces unexpected memory behavior and causes this test to fail even though there is no real leak. --- diff --git a/tests/perl-module.at b/tests/perl-module.at index 329a3f808d..244b1b9999 100644 --- a/tests/perl-module.at +++ b/tests/perl-module.at @@ -23,7 +23,10 @@ asan_lib=$("$abs_top_builddir/libtool" --mode=execute ldd \ "$abs_top_builddir/src/ui/terminal/pspp" 2>/dev/null \ | grep asan \ | awk '{print $3}') -if test ! -e "$asan_lib"; then +if test -e "$asan_lib"; then + USING_ASAN=: +else + USING_ASAN=false asan_lib= fi @@ -676,6 +679,9 @@ AT_SKIP_IF([test "$WITH_PERL_MODULE" = no]) AT_CHECK([perl -MText::Diff -e '' || exit 77]) # Skip this test if Perl's Memory::Usage module is not installed. AT_CHECK([perl -MMemory::Usage -e '' || exit 77]) +# Skip this test if Address Sanitizer is in use because it will +# screw up memory accounting and look like a leak. +AT_SKIP_IF([$USING_ASAN]) AT_CHECK([run_perl_module "$abs_top_builddir/perl-module/t/Pspp.t"], [0], [[1..38 ok 1 - use PSPP;