This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Remove claimed support for mbstowcs, wcstombc
authorKarl Williamson <khw@cpan.org>
Wed, 12 Feb 2020 22:02:46 +0000 (15:02 -0700)
committerKarl Williamson <khw@cpan.org>
Wed, 12 Feb 2020 22:10:42 +0000 (15:10 -0700)
As noted in perldelta, these functions could not have ever worked, and
there is no demand for them, hence no reason to make them work.

This fixes GH #17388

ext/POSIX/POSIX.xs
ext/POSIX/lib/POSIX.pm
ext/POSIX/lib/POSIX.pod
pod/perldelta.pod

index 03342c3..c8d6e8e 100644 (file)
@@ -1547,15 +1547,9 @@ END_EXTERN_C
 #define mblen(a,b) not_here("mblen")
 #endif
 #endif
-#ifndef HAS_MBSTOWCS
-#define mbstowcs(s, pwcs, n) not_here("mbstowcs")
-#endif
 #ifndef HAS_MBTOWC
 #define mbtowc(pwc, s, n) not_here("mbtowc")
 #endif
-#ifndef HAS_WCSTOMBS
-#define wcstombs(s, pwcs, n) not_here("wcstombs")
-#endif
 #ifndef HAS_WCTOMB
 #define wctomb(s, wchar) not_here("wctomb")
 #endif
@@ -3375,12 +3369,6 @@ mblen(s, n)
     OUTPUT:
         RETVAL
 
-size_t
-mbstowcs(s, pwcs, n)
-       wchar_t *       s
-       char *          pwcs
-       size_t          n
-
 int
 mbtowc(pwc, s, n)
        wchar_t *       pwc
@@ -3403,12 +3391,6 @@ mbtowc(pwc, s, n)
         RETVAL
 
 int
-wcstombs(s, pwcs, n)
-       char *          s
-       wchar_t *       pwcs
-       size_t          n
-
-int
 wctomb(s, wchar)
        char *          s
        wchar_t         wchar
index 538f810..d44645a 100644 (file)
@@ -4,7 +4,7 @@ use warnings;
 
 our ($AUTOLOAD, %SIGRT);
 
-our $VERSION = '1.91';
+our $VERSION = '1.92';
 
 require XSLoader;
 
index 9231984..78eb4f1 100644 (file)
@@ -1077,10 +1077,6 @@ be a rather useless function.
 
 However, Perl supports Unicode, see L<perluniintro>.
 
-=item C<mbstowcs>
-
-This is identical to the C function C<mbstowcs()>.
-
 See L</mblen>.
 
 =item C<mbtowc>
@@ -2114,10 +2110,6 @@ builtin C<waitpid()> function, see L<perlfunc/waitpid>.
        $pid = POSIX::waitpid( -1, POSIX::WNOHANG );
        print "status = ", ($? / 256), "\n";
 
-=item C<wcstombs>
-
-This is identical to the C function C<wcstombs()>.
-
 See L</mblen>.
 
 =item C<wctomb>
index bef9194..562473e 100644 (file)
@@ -65,6 +65,14 @@ XXX For a release on a stable branch, this section aspires to be:
 
 [ List each incompatible change as a =head2 entry ]
 
+=head2 Stop pretending C<POSIX::mbstowcs> and C<POSIX::wcstombs> are
+supported
+
+These functions could never have worked due to a defective interface
+specification.  There is clearly no demand for them, given that no one
+has ever complained in the many years the functions were claimed to be
+available, hence so-called "support" for them is now dropped.
+
 =head1 Deprecations
 
 XXX Any deprecated features, syntax, modules etc. should be listed here.