fputs.3.patch   [plain text]


--- fputs.3	2003-05-20 15:22:42.000000000 -0700
+++ fputs.3.edit	2006-07-13 09:28:07.000000000 -0700
@@ -48,14 +48,19 @@
 .Sh SYNOPSIS
 .In stdio.h
 .Ft int
-.Fn fputs "const char *str" "FILE *stream"
+.Fo fputs
+.Fa "const char *restrict s"
+.Fa "FILE *restrict stream"
+.Fc
 .Ft int
-.Fn puts "const char *str"
+.Fo puts
+.Fa "const char *s"
+.Fc
 .Sh DESCRIPTION
 The function
 .Fn fputs
 writes the string pointed to by
-.Fa str
+.Fa s
 to the stream pointed to by
 .Fa stream .
 .\" The terminating
@@ -65,7 +70,7 @@
 The function
 .Fn puts
 writes the string
-.Fa str ,
+.Fa s ,
 and a terminating newline character,
 to the stream
 .Dv stdout .
@@ -97,6 +102,14 @@
 .Va errno
 for any of the errors specified for the routines
 .Xr write 2 .
+.Sh COMPATIBILITY
+.Fn fputs
+now returns a non-negative number (as opposed to 0)
+on successful completion.
+As a result, many tests (e.g., "fputs() == 0", "fputs() != 0")
+do not give the desired result.
+Use "fputs() != EOF" or "fputs() == EOF"
+to determine success or failure.
 .Sh SEE ALSO
 .Xr ferror 3 ,
 .Xr fputws 3 ,
@@ -109,3 +122,13 @@
 .Fn puts
 conform to
 .St -isoC .
+While not mentioned in the standard, both
+.Fn fputs
+and
+.Fn puts
+print
+.Ql (null)
+if
+.Fa str
+is
+.Dv NULL .