Loading...
stdio/FreeBSD/stdio.3.patch /dev/null Libc-583
--- /dev/null
+++ Libc/Libc-583/stdio/FreeBSD/stdio.3.patch
@@ -0,0 +1,108 @@
+--- stdio.3	2004-11-25 11:38:35.000000000 -0800
++++ stdio.3.edit	2006-09-06 16:18:21.000000000 -0700
+@@ -45,6 +45,20 @@
+ .Vt FILE *stdin ;
+ .Vt FILE *stdout ;
+ .Vt FILE *stderr ;
++.Pp
++Note:
++The current implementation does not allow these variables
++to be evaluated at C compile/link time.
++That is, a runtime calculation must be performed, such as:
++.Bd -literal -offset indent
++#include <stdio.h>
++
++static FILE *var;
++
++int main() {
++    var = stdout;
++}
++.Ed
+ .Sh DESCRIPTION
+ The standard
+ .Tn I/O
+@@ -232,11 +246,21 @@
+ .Dv putchar_unlocked
+ exist and will be used if the macro
+ definitions are explicitly removed.
++.Sh LEGACY SYNOPSIS
++The -D_NONSTD_SOURCE flag can be used
++to allow stdin, stdout, and/or stderr
++to be evaluated at compile/link time, as:
++.Bd -literal -offset indent
++#include <stdio.h>
++
++static FILE *var = stdout;
++.Ed
+ .Sh SEE ALSO
+ .Xr close 2 ,
+ .Xr open 2 ,
+ .Xr read 2 ,
+-.Xr write 2
++.Xr write 2 ,
++.Xr compat 5
+ .Sh BUGS
+ The standard buffered functions do not interact well with certain other
+ library and system functions, especially
+@@ -250,7 +274,9 @@
+ .Bl -column "Description"
+ .It Sy "Function	Description"
+ .It "asprintf	formatted output conversion"
++.It ""
+ .It "clearerr	check and reset stream status"
++.It ""
+ .It "fclose	close a stream"
+ .It "fdopen	stream open functions"
+ .It "feof	check and reset stream status"
+@@ -282,15 +308,18 @@
+ .It "fwopen	open a stream"
+ .It "fwprintf	formatted wide character output conversion"
+ .It "fwrite	binary stream input/output"
++.It ""
+ .It "getc	get next character or word from input stream"
+ .It "getchar	get next character or word from input stream"
+ .It "gets	get a line from a stream"
+ .It "getw	get next character or word from input stream"
+ .It "getwc	get next wide character from input stream"
+ .It "getwchar	get next wide character from input stream"
++.It ""
+ .It "mkdtemp	create unique temporary directory"
+ .It "mkstemp	create unique temporary file"
+ .It "mktemp	create unique temporary file"
++.It ""
+ .It "perror	system error messages"
+ .It "printf	formatted output conversion"
+ .It "putc	output a character or word to a stream"
+@@ -299,8 +328,10 @@
+ .It "putw	output a character or word to a stream"
+ .It "putwc	output a wide character to a stream"
+ .It "putwchar	output a wide character to a stream"
++.It ""
+ .It "remove	remove directory entry"
+ .It "rewind	reposition a stream"
++.It ""
+ .It "scanf	input format conversion"
+ .It "setbuf	stream buffering operations"
+ .It "setbuffer	stream buffering operations"
+@@ -313,11 +344,14 @@
+ .It "swprintf	formatted wide character output conversion"
+ .It "sys_errlist	system error messages"
+ .It "sys_nerr	system error messages"
++.It ""
+ .It "tempnam	temporary file routines"
+ .It "tmpfile	temporary file routines"
+ .It "tmpnam	temporary file routines"
++.It ""
+ .It "ungetc	un-get character from input stream"
+ .It "ungetwc	un-get wide character from input stream"
++.It ""
+ .It "vasprintf	formatted output conversion"
+ .It "vfprintf	formatted output conversion"
+ .It "vfscanf	input format conversion"
+@@ -329,5 +363,6 @@
+ .It "vsscanf	input format conversion"
+ .It "vswprintf	formatted wide character output conversion"
+ .It "vwprintf	formatted wide character output conversion"
++.It ""
+ .It "wprintf	formatted wide character output conversion"
+ .El