X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=cv.h;h=3924c839f40061eeacdfe7ecc71885c3cd50700d;hb=404c68920bc89ad702536fbd16b3bceafd287acb;hp=cf71d15ffc4fbfa3301cf03ce6e2fc2e9677ef67;hpb=3441fb63c8a89050ee7151eb55228fe165595be1;p=p5sagit%2Fp5-mst-13.2.git diff --git a/cv.h b/cv.h index cf71d15..3924c83 100644 --- a/cv.h +++ b/cv.h @@ -1,7 +1,7 @@ /* cv.h * - * Copyright (C) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1999, - * 2000, 2001, 2002, 2003, 2004, 2005, 2006, by Larry Wall and others + * Copyright (C) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1999, 2000, + * 2001, 2002, 2003, 2004, 2005, 2006, 2007, by Larry Wall and others * * You may distribute under the terms of either the GNU General Public * License or the Artistic License, as specified in the README file. @@ -18,6 +18,11 @@ struct xpvcv { U32 xlow; U32 xhigh; } xpad_cop_seq; /* used by pad.c for cop_sequence */ + struct { + U32 xbm_previous; /* how many characters in string before rare? */ + U8 xbm_flags; + U8 xbm_rare; /* rarest character in string */ + } xbm_s; /* fields from PVBM */ } xnv_u; STRLEN xpv_cur; /* length of xp_pv as a C string */ STRLEN xpv_len; /* allocated size */ @@ -119,7 +124,8 @@ Returns the stash of the CV. #define CvFILEGV(sv) (gv_fetchfile(CvFILE(sv))) #if defined(__GNUC__) && !defined(PERL_GCC_BRACE_GROUPS_FORBIDDEN) # define CvDEPTH(sv) (*({const CV *_cv = (CV *)sv; \ - assert(SvTYPE(_cv) == SVt_PVCV); \ + assert(SvTYPE(_cv) == SVt_PVCV || \ + SvTYPE(_cv) == SVt_PVFM); \ &((XPVCV*)SvANY(_cv))->xiv_u.xivu_i32; \ })) #else