]> git.ipfire.org Git - thirdparty/glibc.git/blame - manual/macros.texi
Define PTHREAD_STACK_MIN to sysconf(_SC_THREAD_STACK_MIN)
[thirdparty/glibc.git] / manual / macros.texi
CommitLineData
1f77f049
JM
1@c Define common macros used to keep phrasing consistent in the manual.
2
3@ifclear MACROS
4@set MACROS
5
6@c Names used to refer to the library, as noun phrases at the start or
7@c not at the start of a sentence.
8@macro Theglibc
9The GNU C Library
10@end macro
11@macro theglibc
12the GNU C Library
13@end macro
14
15@c Name used to refer to the library as an adjective.
16@macro glibcadj
17GNU C Library
18@end macro
19
a7a93d50
JM
20@c Description applying to all GNU systems; that is, used in
21@c describing a property of a system such that no system without that
22@c property would be considered a variant of the GNU system.
23@macro gnusystems
24GNU systems
25@end macro
26
27@c Systems that are not GNU systems.
28@macro nongnusystems
29non-GNU systems
30@end macro
31
32@c Description applying to GNU/Linux and GNU/Hurd systems, but not
33@c necessarily to other variants of the GNU system.
34@macro gnulinuxhurdsystems
35GNU/Linux and GNU/Hurd systems
36@end macro
37
375592d3 38@c Description applying to GNU/Hurd systems; that is, systems using the
a7a93d50
JM
39@c GNU Hurd with the GNU C Library.
40@macro gnuhurdsystems
41GNU/Hurd systems
42@end macro
43
375592d3 44@c Description applying to GNU/Linux systems; that is, systems using
a7a93d50
JM
45@c the Linux kernel with the GNU C Library.
46@macro gnulinuxsystems
47GNU/Linux systems
48@end macro
49
0a57b83e
AO
50@c Document the safety functions as preliminary. It does NOT expand its
51@c comments.
52@macro prelim {comments}
53Preliminary:
54
55@end macro
56@c Document a function as thread safe.
57@macro mtsafe {comments}
58| MT-Safe \comments\
59
60@end macro
61@c Document a function as thread unsafe.
62@macro mtunsafe {comments}
63| MT-Unsafe \comments\
64
65@end macro
66@c Document a function as safe for use in asynchronous signal handlers.
67@macro assafe {comments}
68| AS-Safe \comments\
69
70@end macro
71@c Document a function as unsafe for use in asynchronous signal
72@c handlers. This distinguishes unmarked functions, for which this
73@c property has not been assessed, from those that have been analyzed.
74@macro asunsafe {comments}
75| AS-Unsafe \comments\
76
77@end macro
78@c Document a function as safe for use when asynchronous cancellation is
79@c enabled.
80@macro acsafe {comments}
81| AC-Safe \comments\
82
83@end macro
84@c Document a function as unsafe for use when asynchronous cancellation
85@c is enabled. This distinguishes unmarked functions, for which this
86@c property has not been assessed, from those that have been analyzed.
87@macro acunsafe {comments}
88| AC-Unsafe \comments\
89
90@end macro
91@c Format safety properties without referencing the section of the
92@c definitions. To be used in the definitions of the properties
93@c themselves.
94@macro sampsafety {notes}
95@noindent
96\notes\|
97
98
99@end macro
100@c Format the safety properties of a function.
101@macro safety {notes}
102\notes\| @xref{POSIX Safety Concepts}.
103
104
105@end macro
375592d3 106@c Function is MT- and AS-Unsafe due to an internal race.
0a57b83e
AO
107@macro mtasurace {comments}
108race\comments\
109@end macro
375592d3 110@c Function is AS-Unsafe due to an internal race.
0a57b83e
AO
111@macro asurace {comments}
112race\comments\
113@end macro
375592d3
AO
114@c Function is MT-Safe, but with potential race on user-supplied object
115@c of opaque type.
0a57b83e
AO
116@macro mtsrace {comments}
117race\comments\
118@end macro
375592d3
AO
119@c Function is MT- and AS-Unsafe for modifying an object that is decreed
120@c MT-constant due to MT-Unsafe accesses elsewhere.
0a57b83e
AO
121@macro mtasuconst {comments}
122const\comments\
123@end macro
375592d3 124@c Function accesses the assumed-constant locale object.
0a57b83e
AO
125@macro mtslocale {comments}
126locale\comments\
127@end macro
375592d3 128@c Function accesses the assumed-constant environment.
0a57b83e
AO
129@macro mtsenv {comments}
130env\comments\
131@end macro
375592d3 132@c Function accesses the assumed-constant hostid.
0a57b83e
AO
133@macro mtshostid {comments}
134hostid\comments\
135@end macro
375592d3 136@c Function accesses the assumed-constant _sigintr variable.
0a57b83e
AO
137@macro mtssigintr {comments}
138sigintr\comments\
139@end macro
375592d3 140@c Function performs MT-Unsafe initialization at the first call.
0a57b83e
AO
141@macro mtuinit {comments}
142init\comments\
143@end macro
375592d3 144@c Function performs libc_once AS-Unsafe initialization.
0a57b83e
AO
145@macro asuinit {comments}
146init\comments\
147@end macro
375592d3 148@c Function performs libc_once AC-Unsafe initialization.
0a57b83e
AO
149@macro acuinit {comments}
150init\comments\
151@end macro
375592d3
AO
152@c Function is AS-Unsafe because it takes a non-recursive mutex that may
153@c already be held by the function interrupted by the signal.
0a57b83e
AO
154@macro asulock {comments}
155lock\comments\
156@end macro
375592d3 157@c Function is AC-Unsafe because it may fail to release a mutex.
0a57b83e
AO
158@macro aculock {comments}
159lock\comments\
160@end macro
375592d3
AO
161@c Function is AS-Unsafe because some data structure may be inconsistent
162@c due to an ongoing updated interrupted by a signal.
0a57b83e
AO
163@macro asucorrupt {comments}
164corrupt\comments\
165@end macro
375592d3
AO
166@c Function is AC-Unsafe because some data structure may be left
167@c inconsistent when cancelled.
0a57b83e
AO
168@macro acucorrupt {comments}
169corrupt\comments\
170@end macro
375592d3 171@c Function is AS- and AC-Unsafe because of malloc/free.
0a57b83e
AO
172@macro ascuheap {comments}
173heap\comments\
174@end macro
375592d3 175@c Function is AS-Unsafe because of malloc/free.
0a57b83e
AO
176@macro asuheap {comments}
177heap\comments\
178@end macro
375592d3 179@c Function is AS- and AC-Unsafe because of dlopen/dlclose.
0a57b83e
AO
180@macro ascudlopen {comments}
181dlopen\comments\
182@end macro
375592d3 183@c Function is AS- and AC-Unsafe because of unknown plugins.
0a57b83e
AO
184@macro ascuplugin {comments}
185plugin\comments\
186@end macro
375592d3 187@c Function is AS- and AC-Unsafe because of i18n.
0a57b83e
AO
188@macro ascuintl {comments}
189i18n\comments\
190@end macro
375592d3 191@c Function is AS--Unsafe because of i18n.
0a57b83e
AO
192@macro asuintl {comments}
193i18n\comments\
194@end macro
375592d3 195@c Function may leak file descriptors if async-cancelled.
0a57b83e
AO
196@macro acsfd {comments}
197fd\comments\
198@end macro
375592d3 199@c Function may leak memory if async-cancelled.
0a57b83e
AO
200@macro acsmem {comments}
201mem\comments\
202@end macro
375592d3 203@c Function is unsafe due to temporary overriding a signal handler.
0a57b83e
AO
204@macro mtascusig {comments}
205sig\comments\
206@end macro
375592d3
AO
207@c Function is MT- and AS-Unsafe due to temporarily changing attributes
208@c of the controlling terminal.
0a57b83e
AO
209@macro mtasuterm {comments}
210term\comments\
211@end macro
375592d3
AO
212@c Function is AC-Unsafe for failing to restore attributes of the
213@c controlling terminal.
0a57b83e
AO
214@macro acuterm {comments}
215term\comments\
216@end macro
375592d3 217@c Function sets timers atomically.
0a57b83e
AO
218@macro mtstimer {comments}
219timer\comments\
220@end macro
375592d3 221@c Function sets and restores timers.
0a57b83e
AO
222@macro mtascutimer {comments}
223timer\comments\
224@end macro
375592d3 225@c Function temporarily changes the current working directory.
0a57b83e
AO
226@macro mtasscwd {comments}
227cwd\comments\
228@end macro
375592d3
AO
229@c Function may fail to restore to the original current working
230@c directory after temporarily changing it.
0a57b83e
AO
231@macro acscwd {comments}
232cwd\comments\
233@end macro
375592d3 234@c Function is MT-Safe while POSIX says it needn't be MT-Safe.
0a57b83e
AO
235@macro mtsposix {comments}
236!posix\comments\
237@end macro
375592d3 238@c Function is MT-Unsafe while POSIX says it should be MT-Safe.
0a57b83e
AO
239@macro mtuposix {comments}
240!posix\comments\
241@end macro
375592d3 242@c Function is AS-Safe while POSIX says it needn't be AS-Safe.
0a57b83e
AO
243@macro assposix {comments}
244!posix\comments\
245@end macro
375592d3 246@c Function is AS-Unsafe while POSIX says it should be AS-Safe.
0a57b83e
AO
247@macro asuposix {comments}
248!posix\comments\
249@end macro
375592d3 250@c Function is AC-Safe while POSIX says it needn't be AC-Safe.
0a57b83e
AO
251@macro acsposix {comments}
252!posix\comments\
253@end macro
375592d3 254@c Function is AC-Unsafe while POSIX says it should be AC-Safe.
0a57b83e
AO
255@macro acuposix {comments}
256!posix\comments\
257@end macro
258
9ceeb279
OB
259@iftex
260@macro twoexp{exp}
261@math{2^{{\exp\}}}
262@end macro
263@end iftex
264@ifnottex
265@macro twoexp{exp}
2662^\exp\
267@end macro
268@end ifnottex
269
a429d2ff
RJ
270@c Used by errlist.awk and errnos.awk to generate other files.
271@c Note that error values have ABI implications for the Hurd.
272@macro errno {err, val, str}
273@cindex \str\
3e6def23 274``\str\.''
a429d2ff
RJ
275@end macro
276
27691d5c 277@c Dummy placeholder while converting annotations.
d08a7e4c 278@c For details on expected use, see `summary.pl --help'.
27691d5c
RJ
279@macro standards {standard, header}
280@end macro
281@c To be used for @*x lists of elements.
282@macro standardsx {element, standard, header}
283@end macro
284
1f77f049 285@end ifclear