summaryrefslogtreecommitdiff
path: root/embed.fnc
diff options
context:
space:
mode:
authorPeter Martini <PeterCMartini@GMail.com>2013-10-13 16:00:00 -0400
committerJames E Keenan <jkeenan@cpan.org>2013-10-16 13:17:44 +0200
commiteedb00faea0e643c5d10ea0d9200aa705124d603 (patch)
tree1da04599023cc1c8c85517c195cf8f3be9506710 /embed.fnc
parent53d48b8bc3daee9ac6baf1f5eb39e4d9899a6646 (diff)
downloadperl-eedb00faea0e643c5d10ea0d9200aa705124d603.tar.gz
Adding a prototype attribute.
This attribute adds an additional way of declaring a prototype for a sub, making sub foo($$) and sub foo : prototype($$) equivalent. The intent is to keep the functionality of prototypes while allowing other modules to use the syntactic space it currently occupies for other purposes. The attribute is supported in attributes.xs to allow attributes::->import to work, but if its defined inline via something like sub foo : prototype($$) {}, it will not call out to the attributes module. For: RT #119251
Diffstat (limited to 'embed.fnc')
-rw-r--r--embed.fnc3
1 files changed, 2 insertions, 1 deletions
diff --git a/embed.fnc b/embed.fnc
index 5320a34131..8ffecaf6b5 100644
--- a/embed.fnc
+++ b/embed.fnc
@@ -300,7 +300,7 @@ p |SV * |core_prototype |NULLOK SV *sv|NN const char *name \
p |OP * |coresub_op |NN SV *const coreargssv|const int code \
|const int opnum
: Used in sv.c
-p |void |cv_ckproto_len_flags |NN const CV* cv|NULLOK const GV* gv\
+EMXp |void |cv_ckproto_len_flags |NN const CV* cv|NULLOK const GV* gv\
|NULLOK const char* p|const STRLEN len \
|const U32 flags
: Used in pp.c and pp_sys.c
@@ -862,6 +862,7 @@ poX |OP* |op_lvalue_flags|NULLOK OP* o|I32 type|U32 flags
p |void |finalize_optree |NN OP* o
#if defined(PERL_IN_OP_C)
s |void |finalize_op |NN OP* o
+s |void |move_proto_attr|NN OP **proto|NN OP **attrs|NN const GV *name
#endif
: Used in op.c and pp_sys.c
p |int |mode_from_discipline|NULLOK const char* s|STRLEN len