Change 34410 by [EMAIL PROTECTED] on 2008/09/23 19:31:18

        Integrate:
        [ 34349]
        S_isa_lookup() no longer recurses (as of Brandon's MRO changes), so we
        don't need to pass in name_stash as a parameter.
        
        [ 34350]
        Use 1 line of code in place of 6 in Perl_sv_derived_from().

Affected files ...

... //depot/maint-5.10/perl/embed.fnc#11 integrate
... //depot/maint-5.10/perl/embed.h#7 integrate
... //depot/maint-5.10/perl/proto.h#9 integrate
... //depot/maint-5.10/perl/universal.c#4 integrate

Differences ...

==== //depot/maint-5.10/perl/embed.fnc#11 (text) ====
Index: perl/embed.fnc
--- perl/embed.fnc#10~33942~    2008-05-27 18:21:26.000000000 -0700
+++ perl/embed.fnc      2008-09-23 12:31:18.000000000 -0700
@@ -1589,7 +1589,7 @@
 #endif
 
 #if defined(PERL_IN_UNIVERSAL_C) || defined(PERL_DECL_PROT)
-s      |bool|isa_lookup        |NULLOK HV *stash|NN const char * const 
name|NULLOK const HV * const name_stash
+s      |bool|isa_lookup        |NULLOK HV *stash|NN const char * const name
 #endif
 
 #if defined(PERL_IN_LOCALE_C) || defined(PERL_DECL_PROT)

==== //depot/maint-5.10/perl/embed.h#7 (text+w) ====
Index: perl/embed.h
--- perl/embed.h#6~33942~       2008-05-27 18:21:26.000000000 -0700
+++ perl/embed.h        2008-09-23 12:31:18.000000000 -0700
@@ -3884,7 +3884,7 @@
 #endif
 #if defined(PERL_IN_UNIVERSAL_C) || defined(PERL_DECL_PROT)
 #ifdef PERL_CORE
-#define isa_lookup(a,b,c)      S_isa_lookup(aTHX_ a,b,c)
+#define isa_lookup(a,b)                S_isa_lookup(aTHX_ a,b)
 #endif
 #endif
 #if defined(PERL_IN_LOCALE_C) || defined(PERL_DECL_PROT)

==== //depot/maint-5.10/perl/proto.h#9 (text+w) ====
Index: perl/proto.h
--- perl/proto.h#8~33942~       2008-05-27 18:21:26.000000000 -0700
+++ perl/proto.h        2008-09-23 12:31:18.000000000 -0700
@@ -4186,7 +4186,7 @@
 #endif
 
 #if defined(PERL_IN_UNIVERSAL_C) || defined(PERL_DECL_PROT)
-STATIC bool    S_isa_lookup(pTHX_ HV *stash, const char * const name, const HV 
* const name_stash)
+STATIC bool    S_isa_lookup(pTHX_ HV *stash, const char * const name)
                        __attribute__nonnull__(pTHX_2);
 
 #endif

==== //depot/maint-5.10/perl/universal.c#4 (text) ====
Index: perl/universal.c
--- perl/universal.c#3~33139~   2008-01-30 15:19:42.000000000 -0800
+++ perl/universal.c    2008-09-23 12:31:18.000000000 -0700
@@ -37,13 +37,14 @@
  */
 
 STATIC bool
-S_isa_lookup(pTHX_ HV *stash, const char * const name, const HV* const 
name_stash)
+S_isa_lookup(pTHX_ HV *stash, const char * const name)
 {
     dVAR;
     AV* stash_linear_isa;
     SV** svp;
     const char *hvname;
     I32 items;
+    const HV *const name_stash = gv_stashpv(name, 0);
 
     /* A stash/class can go by many names (ie. User == main::User), so 
        we compare the stash itself just in case */
@@ -110,13 +111,7 @@
         stash = gv_stashsv(sv, 0);
     }
 
-    if (stash) {
-       HV * const name_stash = gv_stashpv(name, 0);
-       return isa_lookup(stash, name, name_stash);
-    }
-    else
-       return FALSE;
-
+    return stash ? isa_lookup(stash, name) : FALSE;
 }
 
 /*
End of Patch.

Reply via email to