Commit 6ec1ccbee8 for perl

commit 6ec1ccbee899a29c0776f65b73e69a001a415ae1
Author: Paul Evans <leonerd@leonerd.org.uk>
Date:   Mon Oct 12 16:09:45 2026 +0100

    Expose av_create_and_push + av_create_and_unshift_one as real API functions

    These were initially added as experimental and specifically without the
    API wrappers back in 2007:

      commit 29a861e74521a5f903bccb023c86950d733fa0b7
      Author: Nicholas Clark <nick@ccl4.org>
      Date:   Mon Jan 29 18:28:16 2007 +0000

          Add av_create_and_push() and av_create_and_unshift_one() to refactor
          out two repeated idioms.

    Much later the experimental flag was removed in 2021:

      commit 541e9af01a41e04539c3aedd46abb741ef89fb9b
      Author: Richard Leach <rich+perl@hyphen-dash-hyphen.info>
      Date:   Mon Jun 7 00:35:38 2021 +0100

          av_create_and_push/unshift_one: remove experimental flag

    There doesn't seem to be a reason to leave the `o` and `e` flags on
    these; as doing so prevents the short-named wrapper macro from being
    created.

diff --git a/embed.fnc b/embed.fnc
index d4bb7b3371..61a2deefe1 100644
--- a/embed.fnc
+++ b/embed.fnc
@@ -938,10 +938,10 @@ CTp	|void	|atfork_unlock
 Cop	|SV **	|av_arylen_p	|NN AV *av
 Adp	|void	|av_clear	|NN AV *av
 ARdip	|Size_t |av_count	|NN AV *av
-Adeop	|void	|av_create_and_push					\
+Adp	|void	|av_create_and_push					\
 				|NN AV ** const avp			\
 				|NN SV * const val
-Adeop	|SV **	|av_create_and_unshift_one				\
+Adp	|SV **	|av_create_and_unshift_one				\
 				|NN AV ** const avp			\
 				|NN SV * const val
 Adp	|SV *	|av_delete	|NN AV *av				\
diff --git a/embed.h b/embed.h
index ad499da6a5..8b5ab841db 100644
--- a/embed.h
+++ b/embed.h
@@ -122,6 +122,8 @@
 # define atfork_unlock                          Perl_atfork_unlock
 # define av_clear(a)                            Perl_av_clear(aTHX_ a)
 # define av_count(a)                            Perl_av_count(aTHX_ a)
+# define av_create_and_push(a,b)                Perl_av_create_and_push(aTHX_ a,b)
+# define av_create_and_unshift_one(a,b)         Perl_av_create_and_unshift_one(aTHX_ a,b)
 # define av_delete(a,b,c)                       Perl_av_delete(aTHX_ a,b,c)
 # define av_dump(a)                             Perl_av_dump(aTHX_ a)
 # define av_exists(a,b)                         Perl_av_exists(aTHX_ a,b)