#endif
: Used in pp.c
p |SV * |core_prototype |NULLOK SV *sv|NN const char *name \
- |const STRLEN len|NULLOK int * const opnum\
+ |const int code|NULLOK int * const opnum\
|const bool croak
: Used in sv.c
p |void |cv_ckproto_len |NN const CV* cv|NULLOK const GV* gv\
CvFILE(cv) = (char *)file;
CvISXSUB_on(cv);
CvXSUB(cv) = core_xsub;
- (void)core_prototype((SV *)cv, name, len, &opnum, 0);
+ (void)core_prototype((SV *)cv, name, code, &opnum, 0);
opnumsv = opnum ? newSVuv((UV)opnum) : (SV *)NULL;
cv_set_call_checker(
cv, Perl_ck_entersub_args_core, opnumsv ? opnumsv : (SV *)cv
*/
SV *
-Perl_core_prototype(pTHX_ SV *sv, const char *name, const STRLEN len,
+Perl_core_prototype(pTHX_ SV *sv, const char *name, const int code,
int * const opnum, const bool croak)
{
- const int code = keyword(name, len, 1);
int i = 0, n = 0, seen_question = 0, defgv = 0;
I32 oa;
#define MAX_ARGS_OP ((sizeof(I32) - 1) * 2)
if (SvPOK(TOPs) && SvCUR(TOPs) >= 7) {
const char * s = SvPVX_const(TOPs);
if (strnEQ(s, "CORE::", 6)) {
+ const int code = keyword(s + 6, SvCUR(TOPs) - 6, 1);
SV *const sv =
- core_prototype(NULL, s + 6, SvCUR(TOPs) - 6, NULL, 1);
+ core_prototype(NULL, s + 6, code, NULL, 1);
if (sv) ret = sv;
goto set;
}
#define PERL_ARGS_ASSERT_COP_STORE_LABEL \
assert(cop); assert(label)
-PERL_CALLCONV SV * Perl_core_prototype(pTHX_ SV *sv, const char *name, const STRLEN len, int * const opnum, const bool croak)
+PERL_CALLCONV SV * Perl_core_prototype(pTHX_ SV *sv, const char *name, const int code, int * const opnum, const bool croak)
__attribute__nonnull__(pTHX_2);
#define PERL_ARGS_ASSERT_CORE_PROTOTYPE \
assert(name)