Loading...
stdlib/NetBSD/strfmon.3.patch /dev/null Libc-763.13
--- /dev/null
+++ Libc/Libc-763.13/stdlib/NetBSD/strfmon.3.patch
@@ -0,0 +1,94 @@
+--- strfmon.3.orig	2010-02-08 16:26:10.000000000 -0800
++++ strfmon.3	2010-02-08 17:57:07.000000000 -0800
+@@ -30,25 +30,49 @@
+ .Dt STRFMON 3
+ .Os
+ .Sh NAME
+-.Nm strfmon
++.Nm strfmon ,
++.Nm strfmon_l
+ .Nd convert monetary value to string
+-.Sh LIBRARY
+-.Lb libc
++.\" .Sh LIBRARY
++.\" .Lb libc
+ .Sh SYNOPSIS
+ .In monetary.h
+ .Ft ssize_t
+-.Fn strfmon "char * restrict s" "size_t maxsize" "const char * restrict format" "..."
++.Fo strfmon
++.Fa "char *restrict s"
++.Fa "size_t maxsize"
++.Fa "const char *restrict format"
++.Fa "..."
++.Fc
++.In monetary.h
++.In xlocale.h
++.Ft ssize_t
++.Fo strfmon_l
++.Fa "char *restrict s"
++.Fa "size_t maxsize"
++.Fa "locale_t loc"
++.Fa "const char *restrict format"
++.Fa "..."
++.Fc
+ .Sh DESCRIPTION
+ The
+ .Fn strfmon
+ function places characters into the array pointed to by
+-.Fa s
++.Fa s ,
+ as controlled by the string pointed to by
+ .Fa format .
+ No more than
+ .Fa maxsize
+ bytes are placed into the array.
+ .Pp
++While the
++.Fn strfmon
++function uses the current locale, the
++.Fn strfmon_l
++function may be passed a locale directly. See
++.Xr xlocale 3
++for more information.
++.Pp
+ The format string is composed of zero or more directives:
+ ordinary characters (not
+ .Cm % ) ,
+@@ -116,9 +140,9 @@ character is written.
+ .El
+ .El
+ .Sh RETURN VALUES
+-If the total number of resulting bytes including the terminating
++If the total number of resulting bytes, including the terminating
+ .Dv NULL
+-byte is not more than
++byte, is not more than
+ .Fa maxsize ,
+ .Fn strfmon
+ returns the number of bytes placed into the array pointed to by
+@@ -143,8 +167,23 @@ The format string is invalid.
+ .It Bq Er ENOMEM
+ Not enough memory for temporary buffers.
+ .El
++.Sh EXAMPLE
++.Bd -literal -offset indent -compact
++  #include <stdio.h>
++  #include <monetary.h>
++  #include <locale.h>
++
++  int main() {
++          char buf[200];
++          setlocale(LC_ALL, "en_US");
++          (void)strfmon (buf, sizeof(buf)-1, "%n" , 123456.78);
++          printf("%s\n", buf);
++  }
++.Ed
++.Pp
+ .Sh SEE ALSO
+-.Xr localeconv 3
++.Xr localeconv 3 ,
++.Xr xlocale 3
+ .Sh STANDARDS
+ The
+ .Fn strfmon