summaryrefslogtreecommitdiff
path: root/mathoms.c
diff options
context:
space:
mode:
authorDaniel Dragan <bulk88@hotmail.com>2015-01-20 07:51:13 -0500
committerSteve Hay <steve.m.hay@googlemail.com>2015-01-27 08:19:22 +0000
commite4524c4c2a2abf2b0b0a22c933ef56ed5d17f89e (patch)
treef3677209892e944580f53380fe15a1230668d9db /mathoms.c
parent1b3da025c55a48511e8e3b0b8b4cfd716c047d83 (diff)
downloadperl-e4524c4c2a2abf2b0b0a22c933ef56ed5d17f89e.tar.gz
move functions marked as mathomed in embed.fnc to mathoms.c
Ever since commit 075eb5c9b6 mathom functions must be in mathoms.c for their symbols to be skipped in makedef.pl on Win32 Perl. If a function is marked 'b' in embed.fnc, regen.pl does NOT add its prototype to proto.h (it is commented out). Without the proto.h entry, EXTERN_C will be missing and a -DNO_MATHOMS + C++ Win32 Perl build will not link, since the C function will have a mangled name and the symbol will not be found for creating the perl linking library. Also add EXTERN_C to Win32CORE, the init_Win32CORE symbol is special cased for exporting in makedef.pl. Perl_is_utf8_char_buf was marked as 'b' in commit 3cedd9d930 Perl_sv_copypv was marked as 'b' in commit 4bac9ae47b
Diffstat (limited to 'mathoms.c')
-rw-r--r--mathoms.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/mathoms.c b/mathoms.c
index 96b3ac33a7..cd2da8437d 100644
--- a/mathoms.c
+++ b/mathoms.c
@@ -1217,6 +1217,14 @@ Perl_sv_mortalcopy(pTHX_ SV *const oldstr)
return Perl_sv_mortalcopy_flags(aTHX_ oldstr, SV_GMAGIC);
}
+void
+Perl_sv_copypv(pTHX_ SV *const dsv, SV *const ssv)
+{
+ PERL_ARGS_ASSERT_SV_COPYPV;
+
+ sv_copypv_flags(dsv, ssv, 0);
+}
+
UV /* Made into a function, so can be deprecated */
NATIVE_TO_NEED(const UV enc, const UV ch)
{
@@ -1695,6 +1703,22 @@ Perl_is_utf8_char(const U8 *s)
return isUTF8_CHAR(s, s + UTF8SKIP(s));
}
+/*
+=for apidoc is_utf8_char_buf
+
+This is identical to the macro L</isUTF8_CHAR>.
+
+=cut */
+
+STRLEN
+Perl_is_utf8_char_buf(const U8 *buf, const U8* buf_end)
+{
+
+ PERL_ARGS_ASSERT_IS_UTF8_CHAR_BUF;
+
+ return isUTF8_CHAR(buf, buf_end);
+}
+
/* DEPRECATED!
* Like L</utf8_to_uvuni_buf>(), but should only be called when it is known that
* there are no malformations in the input UTF-8 string C<s>. Surrogates,