In perl.git, the branch blead has been updated

<http://perl5.git.perl.org/perl.git/commitdiff/26443f8e448912975ced96860e4f51a9e1fbbaca?hp=34dadc62d399176c3286094e10619c6300ab9243>

- Log -----------------------------------------------------------------
commit 26443f8e448912975ced96860e4f51a9e1fbbaca
Author: David Mitchell <da...@iabyn.com>
Date:   Tue Jul 8 16:28:55 2014 +0100

    libperl.t + ASAN + -DPERL_GLOBAL_STRUCT_PRIVATE
    
    One of the t/porting/libperl.t tests was failing under
    -DPERL_GLOBAL_STRUCT_PRIVATE with clang and address sanitizer,
    since that combo added a data symbol to each object file:
    
        0000000000000000 d __unnamed_1
    
    which contradicted the test of not having any global data.
    Simply ignore that symbol for the purposes of the test.
-----------------------------------------------------------------------

Summary of changes:
 t/porting/libperl.t | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/t/porting/libperl.t b/t/porting/libperl.t
index 92bbc52..a0c8245 100644
--- a/t/porting/libperl.t
+++ b/t/porting/libperl.t
@@ -258,7 +258,10 @@ if ($GSP) {
     ok(!exists $data_symbols{PL_ppaddr}, "has no PL_ppaddr");
 
     ok(! exists $symbols{data}{bss}, "has no data bss symbols");
-    ok(! exists $symbols{data}{data}, "has no data data symbols");
+    ok(! exists $symbols{data}{data} ||
+            # clang with ASAN seems to add this symbol to every object file:
+            !grep($_ ne '__unnamed_1', keys %{$symbols{data}{data}}),
+        "has no data data symbols");
     ok(! exists $symbols{data}{common}, "has no data common symbols");
 
     # -DPERL_GLOBAL_STRUCT_PRIVATE should NOT have

--
Perl5 Master Repository

Reply via email to