--- _SB/Libc/stdio/FreeBSD/ungetwc.3 2004-11-25 11:38:35.000000000 -0800 +++ _SB/Libc/stdio/FreeBSD/ungetwc.3.edit 2006-06-28 16:55:52.000000000 -0700 @@ -42,7 +42,8 @@ .Dt UNGETWC 3 .Os .Sh NAME -.Nm ungetwc +.Nm ungetwc , +.Nm ungetwc_l .Nd un-get wide character from input stream .Sh LIBRARY .Lb libc @@ -50,7 +51,19 @@ .In stdio.h .In wchar.h .Ft wint_t -.Fn ungetwc "wint_t wc" "FILE *stream" +.Fo ungetwc +.Fa "wint_t wc" +.Fa "FILE *stream" +.Fc +.In stdio.h +.In wchar.h +.In xlocale.h +.Ft wint_t +.Fo ungetwc_l +.Fa "wint_t wc" +.Fa "FILE *stream" +.Fa "locale_t loc" +.Fc .Sh DESCRIPTION The .Fn ungetwc @@ -60,22 +73,31 @@ .Vt wchar_t ) back onto the input stream pointed to by .Fa stream . -The pushed-backed wide characters will be returned by subsequent reads on the -stream (in reverse order). -A successful intervening call, using the same stream, to one of the file +The pushed-backed wide characters will be returned (in reverse order) +by subsequent reads on the stream. +A successful intervening call to one of the file positioning functions .Xr fseek 3 , .Xr fsetpos 3 , or -.Xr rewind 3 -will discard the pushed back wide characters. +.Xr rewind 3 , +using the same stream, +will discard the pushed-back wide characters. .Pp -One wide character of push-back is guaranteed, -but as long as there is -sufficient memory, an effectively infinite amount of pushback is allowed. +Only one wide character of push-back is guaranteed, +but as long as there is sufficient memory, +an effectively infinite amount of push-back is allowed. .Pp If a character is successfully pushed-back, the end-of-file indicator for the stream is cleared. +.Pp +Although the +.Fn ungetwc +function uses the current locale, the +.Fn ungetwc_l +function may be passed a locale directly. See +.Xr xlocale 3 +for more information. .Sh RETURN VALUES The .Fn ungetwc @@ -91,7 +113,8 @@ the operation will fail and the stream will remain unchanged. .Sh SEE ALSO .Xr fseek 3 , -.Xr getwc 3 +.Xr getwc 3 , +.Xr xlocale 3 .Sh STANDARDS The .Fn ungetwc