In perl.git, the branch blead has been updated

<http://perl5.git.perl.org/perl.git/commitdiff/efef081eeab2e6a1f5882c447d1aa3cfb2201e46?hp=2dcac756b8b2c3b3d7d34174ba27b78fb1c7ba4a>

- Log -----------------------------------------------------------------
commit efef081eeab2e6a1f5882c447d1aa3cfb2201e46
Author: Reini Urban <[email protected]>
Date:   Mon Dec 13 20:06:33 2010 +0100

    Fix [perl #80632] -MO=Concise,-tree format
    
    Some time between 5.8.3 and 5.8.4, the -tree output
    format started getting extra line breaks.

M       ext/B/B/Concise.pm

commit 0d157ee2a019966dc8b4251425c92472c8c65707
Author: David Leadbeater <[email protected]>
Date:   Thu Dec 16 20:15:57 2010 -0800

    [perl #80548] perldelta for DTrace package name change

M       pod/perldelta.pod

commit 8b079db663fda8b4ad5c7f33655632c57d3e32fd
Author: David Leadbeater <[email protected]>
Date:   Thu Dec 16 20:14:40 2010 -0800

    [perl #80674] Fix compilation with very old versions of glibc
    
    __priority_which_t does not exist on glibc 2.1.
    
    sin6_scope is not present in the set of kernel headers my copy of glibc 2.1 
is
    using. (The presence of sin6_scope in sockaddr_in6 should maybe be a 
Configure
    test.)
    
    blead now compiles on a positively ancient box -- although the Socket tests
    fail.

M       ext/Socket/Socket.xs
M       pp_sys.c
-----------------------------------------------------------------------

Summary of changes:
 ext/B/B/Concise.pm   |    2 +-
 ext/Socket/Socket.xs |    6 ++++++
 pod/perldelta.pod    |   20 ++++++++++++++++++++
 pp_sys.c             |    2 +-
 4 files changed, 28 insertions(+), 2 deletions(-)

diff --git a/ext/B/B/Concise.pm b/ext/B/B/Concise.pm
index 6d06956..fbc02ad 100644
--- a/ext/B/B/Concise.pm
+++ b/ext/B/B/Concise.pm
@@ -586,7 +586,7 @@ sub fmt_line {    # generate text-line for op.
     $text = "# $hr->{src}\n$text" if $show_src and $hr->{src};
 
     chomp $text;
-    return "$text\n" if $text ne "";
+    return "$text\n" if $text ne "" and $order ne "tree";
     return $text; # suppress empty lines
 }
 
diff --git a/ext/Socket/Socket.xs b/ext/Socket/Socket.xs
index dcf6715..c1225ff 100644
--- a/ext/Socket/Socket.xs
+++ b/ext/Socket/Socket.xs
@@ -477,7 +477,9 @@ pack_sockaddr_in6(port, sin6_addr, scope_id=0, flowinfo=0)
        sin6.sin6_port = htons(port);
        sin6.sin6_flowinfo = htonl(flowinfo);
        Copy(addrbytes, &sin6.sin6_addr, sizeof(sin6.sin6_addr), char);
+#if !defined(__GLIBC__) || (__GLIBC__ > 2) || (__GLIBC__ == 2 && 
__GLIBC_MINOR__ >= 3)
        sin6.sin6_scope_id = scope_id;
+#endif
        ST(0) = newSVpvn_flags((char *)&sin6, sizeof(sin6), SVs_TEMP);
 #else
        ST(0) = (SV*)not_here("pack_sockaddr_in6");
@@ -505,7 +507,11 @@ unpack_sockaddr_in6(sin6_sv)
        EXTEND(SP, 4);
        mPUSHi(ntohs(sin6.sin6_port));
        mPUSHp((char *)&sin6.sin6_addr, sizeof(sin6.sin6_addr));
+#if !defined(__GLIBC__) || (__GLIBC__ > 2) || (__GLIBC__ == 2 && 
__GLIBC_MINOR__ >= 3)
        mPUSHi(sin6.sin6_scope_id);
+#else
+       mPUSHi(0);
+#endif
        mPUSHi(ntohl(sin6.sin6_flowinfo));
 #else
        ST(0) = (SV*)not_here("pack_sockaddr_in6");
diff --git a/pod/perldelta.pod b/pod/perldelta.pod
index 82afad3..66b12d5 100644
--- a/pod/perldelta.pod
+++ b/pod/perldelta.pod
@@ -109,6 +109,26 @@ This double setting arrangement is a stopgap until the 
reason for unwinding can
 be made properly introspectable.  C<$@> has never been a reliable indicator of
 this.
 
+=head2 DTrace probes now include package name
+
+The DTrace probes now include an additional argument (C<arg3>) which contains
+the package the subroutine being entered or left was compiled in.
+
+For example using the following DTrace script:
+
+  perl$target:::sub-entry
+  {
+      printf("%s::%s\n", copyinstr(arg0), copyinstr(arg3));
+  }
+
+and then running:
+
+  perl -e'sub test { }; test'
+
+DTrace will print:
+
+  main::test
+
 =head1 Security
 
 XXX Any security-related notices go here.  In particular, any security
diff --git a/pp_sys.c b/pp_sys.c
index 89e131c..d54b44e 100644
--- a/pp_sys.c
+++ b/pp_sys.c
@@ -4473,7 +4473,7 @@ PP(pp_setpgrp)
 #endif
 }
 
-#ifdef __GLIBC__
+#if defined(__GLIBC__) && ((__GLIBC__ == 2 && __GLIBC_MINOR__ >= 3) || 
(__GLIBC__ > 2))
 #  define PRIORITY_WHICH_T(which) (__priority_which_t)which
 #else
 #  define PRIORITY_WHICH_T(which) which

--
Perl5 Master Repository

Reply via email to