2013-11-20 Daniel Ramirez <javamonn@gmail.com>

* libc/iconv/lib/iconv.c, libc/include/iconv.h,
	libc/sys/linux/iconv/iconv.c: Add restrict keyword.
This commit is contained in:
Joel Sherrill 2013-11-20 13:39:36 +00:00
parent c03063e2fc
commit a2c4eac5d0
4 changed files with 19 additions and 10 deletions

View File

@ -1,3 +1,8 @@
2013-11-20 Daniel Ramirez <javamonn@gmail.com>
* libc/iconv/lib/iconv.c, libc/include/iconv.h,
libc/sys/linux/iconv/iconv.c: Add restrict keyword.
2013-11-20 Corinna Vinschen <vinschen@redhat.com>
* libc/include/stdlib.h: Declare realpath only if !__STRICT_ANSI__.

View File

@ -45,9 +45,10 @@ ANSI_SYNOPSIS
#include <iconv.h>
iconv_t iconv_open (const char *<[to]>, const char *<[from]>);
int iconv_close (iconv_t <[cd]>);
size_t iconv (iconv_t <[cd]>, char **<[inbuf]>,
size_t *<[inbytesleft]>,
char **<[outbuf]>, size_t *<[outbytesleft]>),
size_t iconv (iconv_t <[cd]>, char **__restrict<[inbuf]>,
size_t *__restrict<[inbytesleft]>,
char **__restrict<[outbuf]>,
size_t *__restrict<[outbytesleft]>),
iconv_t _iconv_open_r (struct _reent *<[rptr]>,
const char *<[to]>, const char *<[from]>);
@ -168,10 +169,10 @@ _DEFUN(iconv_open, (to, from),
size_t
_DEFUN(iconv, (cd, inbuf, inbytesleft, outbuf, outbytesleft),
iconv_t cd _AND
char **inbuf _AND
size_t *inbytesleft _AND
char **outbuf _AND
size_t *outbytesleft)
char **__restrict inbuf _AND
size_t *__restrict inbytesleft _AND
char **__restrict outbuf _AND
size_t *__restrict outbytesleft)
{
return _iconv_r (_REENT, cd, (_CONST char **) inbuf, inbytesleft,
outbuf, outbytesleft);

View File

@ -41,7 +41,8 @@ iconv_t
_EXFUN(iconv_open, (_CONST char *, _CONST char *));
size_t
_EXFUN(iconv, (iconv_t, char **, size_t *, char **, size_t *));
_EXFUN(iconv, (iconv_t, char **__restrict, size_t *__restrict,
char **__restrict, size_t *__restrict));
int
_EXFUN(iconv_close, (iconv_t));

View File

@ -29,8 +29,10 @@
size_t
iconv (iconv_t cd, char **inbuf, size_t *inbytesleft, char **outbuf,
size_t *outbytesleft)
iconv (iconv_t cd, char **__restrict inbuf,
size_t *__restrict inbytesleft,
char **__restrict outbuf,
size_t *__restrict outbytesleft)
{
__gconv_t gcd = (__gconv_t) cd;
char *outstart = outbuf ? *outbuf : NULL;