From Jason Turner

[cinttypes.syn]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmpuiwdce_1/{from.md → to.md} +98 -111
tmp/tmpuiwdce_1/{from.md → to.md} RENAMED
@@ -77,145 +77,139 @@ namespace std {
77
  The contents and meaning of the header `<cinttypes>` are the same as the
78
  C standard library header `<inttypes.h>`, with the following changes:
79
 
80
  - The header `<cinttypes>` includes the header `<cstdint>` instead of
81
  `<stdint.h>`, and
82
- - if and only if the type `intmax_t` designates an extended integer
83
- type ([[basic.fundamental]]), the following function signatures are
84
- added:
85
  ``` cpp
86
  intmax_t abs(intmax_t);
87
  imaxdiv_t div(intmax_t, intmax_t);
88
  ```
89
 
90
  which shall have the same semantics as the function signatures
91
  `intmax_t imaxabs(intmax_t)` and
92
  `imaxdiv_t imaxdiv(intmax_t, intmax_t)`, respectively.
93
 
94
- ISO C 7.8.
95
 
96
  <!-- Link reference definitions -->
97
  [adjustfield.manip]: #adjustfield.manip
98
- [allocator.requirements]: library.md#allocator.requirements
99
  [basefield.manip]: #basefield.manip
100
  [basic.fundamental]: basic.md#basic.fundamental
101
  [basic.ios.cons]: #basic.ios.cons
 
102
  [basic.ios.members]: #basic.ios.members
103
  [basic.start.main]: basic.md#basic.start.main
104
  [bidirectional.iterators]: iterators.md#bidirectional.iterators
105
  [bitmask.types]: library.md#bitmask.types
106
  [c.files]: #c.files
 
107
  [cinttypes.syn]: #cinttypes.syn
 
 
 
 
 
 
 
108
  [cstdio.syn]: #cstdio.syn
109
  [defns.ntcts]: library.md#defns.ntcts
110
  [enumerated.types]: library.md#enumerated.types
111
  [error.reporting]: #error.reporting
112
  [ext.manip]: #ext.manip
113
- [fig:streampos]: #fig:streampos
114
  [file.streams]: #file.streams
115
  [filebuf]: #filebuf
116
  [filebuf.assign]: #filebuf.assign
117
  [filebuf.cons]: #filebuf.cons
118
  [filebuf.members]: #filebuf.members
 
 
119
  [filebuf.virtuals]: #filebuf.virtuals
120
- [filesystem_error.members]: #filesystem_error.members
121
  [filesystems]: #filesystems
122
  [floatfield.manip]: #floatfield.manip
123
  [fmtflags.manip]: #fmtflags.manip
124
  [fmtflags.state]: #fmtflags.state
125
  [fpos]: #fpos
126
  [fpos.members]: #fpos.members
127
  [fpos.operations]: #fpos.operations
128
- [fs.class.directory_entry]: #fs.class.directory_entry
129
- [fs.class.directory_iterator]: #fs.class.directory_iterator
130
- [fs.class.file_status]: #fs.class.file_status
131
- [fs.class.filesystem_error]: #fs.class.filesystem_error
132
  [fs.class.path]: #fs.class.path
133
  [fs.class.rec.dir.itr]: #fs.class.rec.dir.itr
134
  [fs.conform.9945]: #fs.conform.9945
135
  [fs.conform.os]: #fs.conform.os
136
  [fs.conformance]: #fs.conformance
137
- [fs.def.absolute.path]: #fs.def.absolute.path
138
- [fs.def.filename]: #fs.def.filename
139
- [fs.def.link]: #fs.def.link
140
- [fs.def.native]: #fs.def.native
141
- [fs.def.native.encode]: #fs.def.native.encode
142
- [fs.def.normal.form]: #fs.def.normal.form
143
- [fs.def.osdep]: #fs.def.osdep
144
- [fs.def.path]: #fs.def.path
145
- [fs.def.pathname]: #fs.def.pathname
146
- [fs.def.pathres]: #fs.def.pathres
147
- [fs.def.race]: #fs.def.race
148
- [fs.def.symlink]: #fs.def.symlink
149
- [fs.definitions]: #fs.definitions
150
  [fs.dir.entry.cons]: #fs.dir.entry.cons
151
  [fs.dir.entry.mods]: #fs.dir.entry.mods
152
  [fs.dir.entry.obs]: #fs.dir.entry.obs
153
  [fs.dir.itr.members]: #fs.dir.itr.members
154
  [fs.dir.itr.nonmembers]: #fs.dir.itr.nonmembers
155
  [fs.enum]: #fs.enum
156
  [fs.enum.copy.opts]: #fs.enum.copy.opts
157
  [fs.enum.dir.opts]: #fs.enum.dir.opts
158
- [fs.enum.file_type]: #fs.enum.file_type
159
  [fs.enum.path.format]: #fs.enum.path.format
160
  [fs.enum.perm.opts]: #fs.enum.perm.opts
161
  [fs.enum.perms]: #fs.enum.perms
162
  [fs.err.report]: #fs.err.report
163
- [fs.file_status.cons]: #fs.file_status.cons
164
- [fs.file_status.mods]: #fs.file_status.mods
165
- [fs.file_status.obs]: #fs.file_status.obs
 
166
  [fs.filesystem.syn]: #fs.filesystem.syn
167
  [fs.general]: #fs.general
168
  [fs.norm.ref]: #fs.norm.ref
169
  [fs.op.absolute]: #fs.op.absolute
170
  [fs.op.canonical]: #fs.op.canonical
171
  [fs.op.copy]: #fs.op.copy
172
- [fs.op.copy_file]: #fs.op.copy_file
173
- [fs.op.copy_symlink]: #fs.op.copy_symlink
174
- [fs.op.create_dir_symlk]: #fs.op.create_dir_symlk
175
- [fs.op.create_directories]: #fs.op.create_directories
176
- [fs.op.create_directory]: #fs.op.create_directory
177
- [fs.op.create_hard_lk]: #fs.op.create_hard_lk
178
- [fs.op.create_symlink]: #fs.op.create_symlink
179
- [fs.op.current_path]: #fs.op.current_path
180
  [fs.op.equivalent]: #fs.op.equivalent
181
  [fs.op.exists]: #fs.op.exists
182
- [fs.op.file_size]: #fs.op.file_size
183
  [fs.op.funcs]: #fs.op.funcs
184
- [fs.op.hard_lk_ct]: #fs.op.hard_lk_ct
185
- [fs.op.is_block_file]: #fs.op.is_block_file
186
- [fs.op.is_char_file]: #fs.op.is_char_file
187
- [fs.op.is_directory]: #fs.op.is_directory
188
- [fs.op.is_empty]: #fs.op.is_empty
189
- [fs.op.is_fifo]: #fs.op.is_fifo
190
- [fs.op.is_other]: #fs.op.is_other
191
- [fs.op.is_regular_file]: #fs.op.is_regular_file
192
- [fs.op.is_socket]: #fs.op.is_socket
193
- [fs.op.is_symlink]: #fs.op.is_symlink
194
- [fs.op.last_write_time]: #fs.op.last_write_time
195
  [fs.op.permissions]: #fs.op.permissions
196
  [fs.op.proximate]: #fs.op.proximate
197
- [fs.op.read_symlink]: #fs.op.read_symlink
198
  [fs.op.relative]: #fs.op.relative
199
  [fs.op.remove]: #fs.op.remove
200
- [fs.op.remove_all]: #fs.op.remove_all
201
  [fs.op.rename]: #fs.op.rename
202
- [fs.op.resize_file]: #fs.op.resize_file
203
  [fs.op.space]: #fs.op.space
204
  [fs.op.status]: #fs.op.status
205
- [fs.op.status_known]: #fs.op.status_known
206
- [fs.op.symlink_status]: #fs.op.symlink_status
207
- [fs.op.temp_dir_path]: #fs.op.temp_dir_path
208
- [fs.op.weakly_canonical]: #fs.op.weakly_canonical
209
  [fs.path.append]: #fs.path.append
210
  [fs.path.assign]: #fs.path.assign
211
  [fs.path.compare]: #fs.path.compare
212
  [fs.path.concat]: #fs.path.concat
213
  [fs.path.construct]: #fs.path.construct
214
  [fs.path.cvt]: #fs.path.cvt
215
  [fs.path.decompose]: #fs.path.decompose
216
- [fs.path.factory]: #fs.path.factory
217
  [fs.path.fmt.cvt]: #fs.path.fmt.cvt
218
  [fs.path.gen]: #fs.path.gen
219
  [fs.path.generic]: #fs.path.generic
220
  [fs.path.generic.obs]: #fs.path.generic.obs
221
  [fs.path.io]: #fs.path.io
@@ -243,28 +237,30 @@ ISO C 7.8.
243
  [ifstream.members]: #ifstream.members
244
  [input.iterators]: iterators.md#input.iterators
245
  [input.output]: #input.output
246
  [input.output.general]: #input.output.general
247
  [input.streams]: #input.streams
248
- [intro.multithread]: intro.md#intro.multithread
 
249
  [iomanip.syn]: #iomanip.syn
250
  [ios]: #ios
251
  [ios.base]: #ios.base
252
  [ios.base.callback]: #ios.base.callback
253
  [ios.base.cons]: #ios.base.cons
254
  [ios.base.locales]: #ios.base.locales
255
  [ios.base.storage]: #ios.base.storage
 
 
 
 
 
256
  [ios.members.static]: #ios.members.static
 
257
  [ios.overview]: #ios.overview
 
258
  [ios.syn]: #ios.syn
259
  [ios.types]: #ios.types
260
- [ios::Init]: #ios::Init
261
- [ios::failure]: #ios::failure
262
- [ios::fmtflags]: #ios::fmtflags
263
- [ios::iostate]: #ios::iostate
264
- [ios::openmode]: #ios::openmode
265
- [ios::seekdir]: #ios::seekdir
266
  [iosfwd.syn]: #iosfwd.syn
267
  [iostate.flags]: #iostate.flags
268
  [iostream.assign]: #iostream.assign
269
  [iostream.cons]: #iostream.cons
270
  [iostream.dest]: #iostream.dest
@@ -277,32 +273,34 @@ ISO C 7.8.
277
  [iostream.syn]: #iostream.syn
278
  [iostreamclass]: #iostreamclass
279
  [iostreams.base]: #iostreams.base
280
  [iostreams.limits.pos]: #iostreams.limits.pos
281
  [iostreams.requirements]: #iostreams.requirements
 
282
  [iostreams.threadsafety]: #iostreams.threadsafety
283
  [istream]: #istream
284
  [istream.assign]: #istream.assign
285
  [istream.cons]: #istream.cons
286
  [istream.extractors]: #istream.extractors
287
  [istream.formatted]: #istream.formatted
288
  [istream.formatted.arithmetic]: #istream.formatted.arithmetic
289
  [istream.formatted.reqmts]: #istream.formatted.reqmts
290
  [istream.manip]: #istream.manip
291
  [istream.rvalue]: #istream.rvalue
 
292
  [istream.syn]: #istream.syn
293
  [istream.unformatted]: #istream.unformatted
294
- [istream::sentry]: #istream::sentry
295
  [istringstream]: #istringstream
296
  [istringstream.assign]: #istringstream.assign
297
  [istringstream.cons]: #istringstream.cons
298
  [istringstream.members]: #istringstream.members
299
  [lex.charset]: lex.md#lex.charset
300
  [locale.codecvt.virtuals]: localization.md#locale.codecvt.virtuals
301
  [locale.num.get]: localization.md#locale.num.get
 
302
  [narrow.stream.objects]: #narrow.stream.objects
303
- [numeric.limits]: language.md#numeric.limits
304
  [ofstream]: #ofstream
305
  [ofstream.assign]: #ofstream.assign
306
  [ofstream.cons]: #ofstream.cons
307
  [ofstream.members]: #ofstream.members
308
  [ostream]: #ostream
@@ -314,13 +312,13 @@ ISO C 7.8.
314
  [ostream.inserters.arithmetic]: #ostream.inserters.arithmetic
315
  [ostream.inserters.character]: #ostream.inserters.character
316
  [ostream.manip]: #ostream.manip
317
  [ostream.rvalue]: #ostream.rvalue
318
  [ostream.seeks]: #ostream.seeks
 
319
  [ostream.syn]: #ostream.syn
320
  [ostream.unformatted]: #ostream.unformatted
321
- [ostream::sentry]: #ostream::sentry
322
  [ostringstream]: #ostringstream
323
  [ostringstream.assign]: #ostringstream.assign
324
  [ostringstream.cons]: #ostringstream.cons
325
  [ostringstream.members]: #ostringstream.members
326
  [output.streams]: #output.streams
@@ -356,60 +354,49 @@ ISO C 7.8.
356
  [string.streams]: #string.streams
357
  [stringbuf]: #stringbuf
358
  [stringbuf.assign]: #stringbuf.assign
359
  [stringbuf.cons]: #stringbuf.cons
360
  [stringbuf.members]: #stringbuf.members
 
 
361
  [stringbuf.virtuals]: #stringbuf.virtuals
362
  [strings]: strings.md#strings
363
  [stringstream]: #stringstream
364
  [stringstream.assign]: #stringstream.assign
365
  [stringstream.cons]: #stringstream.cons
366
  [stringstream.members]: #stringstream.members
367
- [tab:enum.path.format]: #tab:enum.path.format
368
- [tab:enum.perm_options]: #tab:enum.perm_options
369
- [tab:filesystem_error.1]: #tab:filesystem_error.1
370
- [tab:filesystem_error.2]: #tab:filesystem_error.2
371
- [tab:filesystem_error.3]: #tab:filesystem_error.3
372
- [tab:fs.enum.copy_options]: #tab:fs.enum.copy_options
373
- [tab:fs.enum.directory_options]: #tab:fs.enum.directory_options
374
- [tab:fs.enum.file_type]: #tab:fs.enum.file_type
375
- [tab:fs.enum.perms]: #tab:fs.enum.perms
376
- [tab:iostreams.basicios.init.effects]: #tab:iostreams.basicios.init.effects
377
- [tab:iostreams.copyfmt.effects]: #tab:iostreams.copyfmt.effects
378
- [tab:iostreams.file.open.modes]: #tab:iostreams.file.open.modes
379
- [tab:iostreams.fmtflags.constants]: #tab:iostreams.fmtflags.constants
380
- [tab:iostreams.fmtflags.effects]: #tab:iostreams.fmtflags.effects
381
- [tab:iostreams.iostate.effects]: #tab:iostreams.iostate.effects
382
- [tab:iostreams.lib.summary]: #tab:iostreams.lib.summary
383
- [tab:iostreams.newoff.values]: #tab:iostreams.newoff.values
384
- [tab:iostreams.openmode.effects]: #tab:iostreams.openmode.effects
385
- [tab:iostreams.position.requirements]: #tab:iostreams.position.requirements
386
- [tab:iostreams.seekdir.effects]: #tab:iostreams.seekdir.effects
387
- [tab:iostreams.seekoff.effects]: #tab:iostreams.seekoff.effects
388
- [tab:iostreams.seekoff.positioning]: #tab:iostreams.seekoff.positioning
389
  [temp.deduct]: temp.md#temp.deduct
390
- [time.clock.req]: utilities.md#time.clock.req
391
  [wide.stream.objects]: #wide.stream.objects
392
 
393
  [^1]: It is the implementation’s responsibility to implement headers so
394
  that including `<iosfwd>` and other headers does not violate the
395
  rules about multiple occurrences of default arguments.
396
 
397
- [^2]: If it is possible for them to do so, implementations are
398
- encouraged to initialize the objects earlier than required.
399
 
400
- [^3]: Constructors and destructors for static objects can access these
401
- objects to read input from `stdin` or write output to `stdout` or
402
- `stderr`.
403
 
404
  [^4]: Typically `long long`.
405
 
406
  [^5]: `streamsize` is used in most places where ISO C would use
407
- `size_t`. Most of the uses of `streamsize` could use `size_t`,
408
- except for the `strstreambuf` constructors, which require negative
409
- values. It should probably be the signed type corresponding to
410
- `size_t` (which is what Posix.2 calls `ssize_t`).
411
 
412
  [^6]: This implies that operations on a standard iostream object can be
413
  mixed arbitrarily with operations on the corresponding stdio stream.
414
  In practical terms, synchronization usually means that a standard
415
  iostream object and a standard stdio object share a buffer.
@@ -417,13 +404,13 @@ ISO C 7.8.
417
  [^7]: An implementation is free to implement both the integer array
418
  pointed at by `iarray` and the pointer array pointed at by `parray`
419
  as sparse data structures, possibly with a one-element cache for
420
  each.
421
 
422
- [^8]: for example, because it cannot allocate space.
423
 
424
- [^9]: for example, because it cannot allocate space.
425
 
426
  [^10]: This suggests an infinite amount of copying, but the
427
  implementation can keep track of the maximum element of the arrays
428
  that is nonzero.
429
 
@@ -459,22 +446,22 @@ ISO C 7.8.
459
 
460
  [^18]: This will be possible only in functions that are part of the
461
  library. The semantics of the constructor used in user code is as
462
  specified.
463
 
464
- [^19]: The sentry constructor and destructor can also perform additional
465
- implementation-dependent operations.
466
 
467
- [^20]: This is done without causing an `ios::failure` to be thrown.
468
 
469
  [^21]: See, for example, the function signature
470
- `ws(basic_istream&)` ([[istream.manip]]).
471
 
472
  [^22]: See, for example, the function signature
473
- `dec(ios_base&)` ([[basefield.manip]]).
474
 
475
- [^23]: This is done without causing an `ios::failure` to be thrown.
476
 
477
  [^24]: Note that this function is not overloaded on types `signed char`
478
  and `unsigned char`.
479
 
480
  [^25]: Note that this function is not overloaded on types `signed char`
@@ -500,19 +487,19 @@ ISO C 7.8.
500
  function can determine that no synchronization is necessary.
501
 
502
  [^32]: The `sentry` constructor and destructor can also perform
503
  additional implementation-dependent operations.
504
 
505
- [^33]: without causing an `ios::failure` to be thrown.
506
 
507
  [^34]: See, for example, the function signature
508
- `endl(basic_ostream&)` ([[ostream.manip]]).
509
 
510
  [^35]: See, for example, the function signature
511
- `dec(ios_base&)` ([[basefield.manip]]).
512
 
513
- [^36]: without causing an `ios::failure` to be thrown.
514
 
515
  [^37]: Note that this function is not overloaded on types `signed char`
516
  and `unsigned char`.
517
 
518
  [^38]: Note that this function is not overloaded on types `signed char`
@@ -527,11 +514,11 @@ ISO C 7.8.
527
  `basic_ostream<charT, traits>` object `cout` (the same as
528
  `cout << noshowbase`).
529
 
530
  [^40]: The macro `SEEK_END` is defined, and the function signatures
531
  `fopen(const char*, const char*)` and `fseek(FILE*, long, int)` are
532
- declared, in `<cstdio>` ([[cstdio.syn]]).
533
 
534
  [^41]: POSIX® is a registered trademark of The IEEE. Windows® is a
535
  registered trademark of Microsoft Corporation. This information is
536
  given for the convenience of users of this document and does not
537
  constitute an endorsement by ISO or IEC of these products.
 
77
  The contents and meaning of the header `<cinttypes>` are the same as the
78
  C standard library header `<inttypes.h>`, with the following changes:
79
 
80
  - The header `<cinttypes>` includes the header `<cstdint>` instead of
81
  `<stdint.h>`, and
82
+ - if and only if the type `intmax_t` designates an extended integer type
83
+ [[basic.fundamental]], the following function signatures are added:
 
84
  ``` cpp
85
  intmax_t abs(intmax_t);
86
  imaxdiv_t div(intmax_t, intmax_t);
87
  ```
88
 
89
  which shall have the same semantics as the function signatures
90
  `intmax_t imaxabs(intmax_t)` and
91
  `imaxdiv_t imaxdiv(intmax_t, intmax_t)`, respectively.
92
 
93
+ See also: ISO C 7.8
94
 
95
  <!-- Link reference definitions -->
96
  [adjustfield.manip]: #adjustfield.manip
 
97
  [basefield.manip]: #basefield.manip
98
  [basic.fundamental]: basic.md#basic.fundamental
99
  [basic.ios.cons]: #basic.ios.cons
100
+ [basic.ios.copyfmt]: #basic.ios.copyfmt
101
  [basic.ios.members]: #basic.ios.members
102
  [basic.start.main]: basic.md#basic.start.main
103
  [bidirectional.iterators]: iterators.md#bidirectional.iterators
104
  [bitmask.types]: library.md#bitmask.types
105
  [c.files]: #c.files
106
+ [char.traits]: strings.md#char.traits
107
  [cinttypes.syn]: #cinttypes.syn
108
+ [container.requirements.general]: containers.md#container.requirements.general
109
+ [cpp17.allocator]: #cpp17.allocator
110
+ [cpp17.copyassignable]: #cpp17.copyassignable
111
+ [cpp17.copyconstructible]: #cpp17.copyconstructible
112
+ [cpp17.defaultconstructible]: #cpp17.defaultconstructible
113
+ [cpp17.destructible]: #cpp17.destructible
114
+ [cpp17.equalitycomparable]: #cpp17.equalitycomparable
115
  [cstdio.syn]: #cstdio.syn
116
  [defns.ntcts]: library.md#defns.ntcts
117
  [enumerated.types]: library.md#enumerated.types
118
  [error.reporting]: #error.reporting
119
  [ext.manip]: #ext.manip
 
120
  [file.streams]: #file.streams
121
  [filebuf]: #filebuf
122
  [filebuf.assign]: #filebuf.assign
123
  [filebuf.cons]: #filebuf.cons
124
  [filebuf.members]: #filebuf.members
125
+ [filebuf.open.modes]: #filebuf.open.modes
126
+ [filebuf.seekoff]: #filebuf.seekoff
127
  [filebuf.virtuals]: #filebuf.virtuals
 
128
  [filesystems]: #filesystems
129
  [floatfield.manip]: #floatfield.manip
130
  [fmtflags.manip]: #fmtflags.manip
131
  [fmtflags.state]: #fmtflags.state
132
  [fpos]: #fpos
133
  [fpos.members]: #fpos.members
134
  [fpos.operations]: #fpos.operations
135
+ [fs.class.directory.entry]: #fs.class.directory.entry
136
+ [fs.class.directory.iterator]: #fs.class.directory.iterator
137
+ [fs.class.file.status]: #fs.class.file.status
138
+ [fs.class.filesystem.error]: #fs.class.filesystem.error
139
  [fs.class.path]: #fs.class.path
140
  [fs.class.rec.dir.itr]: #fs.class.rec.dir.itr
141
  [fs.conform.9945]: #fs.conform.9945
142
  [fs.conform.os]: #fs.conform.os
143
  [fs.conformance]: #fs.conformance
 
 
 
 
 
 
 
 
 
 
 
 
 
144
  [fs.dir.entry.cons]: #fs.dir.entry.cons
145
  [fs.dir.entry.mods]: #fs.dir.entry.mods
146
  [fs.dir.entry.obs]: #fs.dir.entry.obs
147
  [fs.dir.itr.members]: #fs.dir.itr.members
148
  [fs.dir.itr.nonmembers]: #fs.dir.itr.nonmembers
149
  [fs.enum]: #fs.enum
150
  [fs.enum.copy.opts]: #fs.enum.copy.opts
151
  [fs.enum.dir.opts]: #fs.enum.dir.opts
152
+ [fs.enum.file.type]: #fs.enum.file.type
153
  [fs.enum.path.format]: #fs.enum.path.format
154
  [fs.enum.perm.opts]: #fs.enum.perm.opts
155
  [fs.enum.perms]: #fs.enum.perms
156
  [fs.err.report]: #fs.err.report
157
+ [fs.file.status.cons]: #fs.file.status.cons
158
+ [fs.file.status.mods]: #fs.file.status.mods
159
+ [fs.file.status.obs]: #fs.file.status.obs
160
+ [fs.filesystem.error.members]: #fs.filesystem.error.members
161
  [fs.filesystem.syn]: #fs.filesystem.syn
162
  [fs.general]: #fs.general
163
  [fs.norm.ref]: #fs.norm.ref
164
  [fs.op.absolute]: #fs.op.absolute
165
  [fs.op.canonical]: #fs.op.canonical
166
  [fs.op.copy]: #fs.op.copy
167
+ [fs.op.copy.file]: #fs.op.copy.file
168
+ [fs.op.copy.symlink]: #fs.op.copy.symlink
169
+ [fs.op.create.dir.symlk]: #fs.op.create.dir.symlk
170
+ [fs.op.create.directories]: #fs.op.create.directories
171
+ [fs.op.create.directory]: #fs.op.create.directory
172
+ [fs.op.create.hard.lk]: #fs.op.create.hard.lk
173
+ [fs.op.create.symlink]: #fs.op.create.symlink
174
+ [fs.op.current.path]: #fs.op.current.path
175
  [fs.op.equivalent]: #fs.op.equivalent
176
  [fs.op.exists]: #fs.op.exists
177
+ [fs.op.file.size]: #fs.op.file.size
178
  [fs.op.funcs]: #fs.op.funcs
179
+ [fs.op.hard.lk.ct]: #fs.op.hard.lk.ct
180
+ [fs.op.is.block.file]: #fs.op.is.block.file
181
+ [fs.op.is.char.file]: #fs.op.is.char.file
182
+ [fs.op.is.directory]: #fs.op.is.directory
183
+ [fs.op.is.empty]: #fs.op.is.empty
184
+ [fs.op.is.fifo]: #fs.op.is.fifo
185
+ [fs.op.is.other]: #fs.op.is.other
186
+ [fs.op.is.regular.file]: #fs.op.is.regular.file
187
+ [fs.op.is.socket]: #fs.op.is.socket
188
+ [fs.op.is.symlink]: #fs.op.is.symlink
189
+ [fs.op.last.write.time]: #fs.op.last.write.time
190
  [fs.op.permissions]: #fs.op.permissions
191
  [fs.op.proximate]: #fs.op.proximate
192
+ [fs.op.read.symlink]: #fs.op.read.symlink
193
  [fs.op.relative]: #fs.op.relative
194
  [fs.op.remove]: #fs.op.remove
195
+ [fs.op.remove.all]: #fs.op.remove.all
196
  [fs.op.rename]: #fs.op.rename
197
+ [fs.op.resize.file]: #fs.op.resize.file
198
  [fs.op.space]: #fs.op.space
199
  [fs.op.status]: #fs.op.status
200
+ [fs.op.status.known]: #fs.op.status.known
201
+ [fs.op.symlink.status]: #fs.op.symlink.status
202
+ [fs.op.temp.dir.path]: #fs.op.temp.dir.path
203
+ [fs.op.weakly.canonical]: #fs.op.weakly.canonical
204
  [fs.path.append]: #fs.path.append
205
  [fs.path.assign]: #fs.path.assign
206
  [fs.path.compare]: #fs.path.compare
207
  [fs.path.concat]: #fs.path.concat
208
  [fs.path.construct]: #fs.path.construct
209
  [fs.path.cvt]: #fs.path.cvt
210
  [fs.path.decompose]: #fs.path.decompose
 
211
  [fs.path.fmt.cvt]: #fs.path.fmt.cvt
212
  [fs.path.gen]: #fs.path.gen
213
  [fs.path.generic]: #fs.path.generic
214
  [fs.path.generic.obs]: #fs.path.generic.obs
215
  [fs.path.io]: #fs.path.io
 
237
  [ifstream.members]: #ifstream.members
238
  [input.iterators]: iterators.md#input.iterators
239
  [input.output]: #input.output
240
  [input.output.general]: #input.output.general
241
  [input.streams]: #input.streams
242
+ [intro.multithread]: basic.md#intro.multithread
243
+ [intro.races]: basic.md#intro.races
244
  [iomanip.syn]: #iomanip.syn
245
  [ios]: #ios
246
  [ios.base]: #ios.base
247
  [ios.base.callback]: #ios.base.callback
248
  [ios.base.cons]: #ios.base.cons
249
  [ios.base.locales]: #ios.base.locales
250
  [ios.base.storage]: #ios.base.storage
251
+ [ios.failure]: #ios.failure
252
+ [ios.fmtflags]: #ios.fmtflags
253
+ [ios.fmtflags.const]: #ios.fmtflags.const
254
+ [ios.init]: #ios.init
255
+ [ios.iostate]: #ios.iostate
256
  [ios.members.static]: #ios.members.static
257
+ [ios.openmode]: #ios.openmode
258
  [ios.overview]: #ios.overview
259
+ [ios.seekdir]: #ios.seekdir
260
  [ios.syn]: #ios.syn
261
  [ios.types]: #ios.types
 
 
 
 
 
 
262
  [iosfwd.syn]: #iosfwd.syn
263
  [iostate.flags]: #iostate.flags
264
  [iostream.assign]: #iostream.assign
265
  [iostream.cons]: #iostream.cons
266
  [iostream.dest]: #iostream.dest
 
273
  [iostream.syn]: #iostream.syn
274
  [iostreamclass]: #iostreamclass
275
  [iostreams.base]: #iostreams.base
276
  [iostreams.limits.pos]: #iostreams.limits.pos
277
  [iostreams.requirements]: #iostreams.requirements
278
+ [iostreams.summary]: #iostreams.summary
279
  [iostreams.threadsafety]: #iostreams.threadsafety
280
  [istream]: #istream
281
  [istream.assign]: #istream.assign
282
  [istream.cons]: #istream.cons
283
  [istream.extractors]: #istream.extractors
284
  [istream.formatted]: #istream.formatted
285
  [istream.formatted.arithmetic]: #istream.formatted.arithmetic
286
  [istream.formatted.reqmts]: #istream.formatted.reqmts
287
  [istream.manip]: #istream.manip
288
  [istream.rvalue]: #istream.rvalue
289
+ [istream.sentry]: #istream.sentry
290
  [istream.syn]: #istream.syn
291
  [istream.unformatted]: #istream.unformatted
 
292
  [istringstream]: #istringstream
293
  [istringstream.assign]: #istringstream.assign
294
  [istringstream.cons]: #istringstream.cons
295
  [istringstream.members]: #istringstream.members
296
  [lex.charset]: lex.md#lex.charset
297
  [locale.codecvt.virtuals]: localization.md#locale.codecvt.virtuals
298
  [locale.num.get]: localization.md#locale.num.get
299
+ [namespace.std]: library.md#namespace.std
300
  [narrow.stream.objects]: #narrow.stream.objects
301
+ [numeric.limits]: support.md#numeric.limits
302
  [ofstream]: #ofstream
303
  [ofstream.assign]: #ofstream.assign
304
  [ofstream.cons]: #ofstream.cons
305
  [ofstream.members]: #ofstream.members
306
  [ostream]: #ostream
 
312
  [ostream.inserters.arithmetic]: #ostream.inserters.arithmetic
313
  [ostream.inserters.character]: #ostream.inserters.character
314
  [ostream.manip]: #ostream.manip
315
  [ostream.rvalue]: #ostream.rvalue
316
  [ostream.seeks]: #ostream.seeks
317
+ [ostream.sentry]: #ostream.sentry
318
  [ostream.syn]: #ostream.syn
319
  [ostream.unformatted]: #ostream.unformatted
 
320
  [ostringstream]: #ostringstream
321
  [ostringstream.assign]: #ostringstream.assign
322
  [ostringstream.cons]: #ostringstream.cons
323
  [ostringstream.members]: #ostringstream.members
324
  [output.streams]: #output.streams
 
354
  [string.streams]: #string.streams
355
  [stringbuf]: #stringbuf
356
  [stringbuf.assign]: #stringbuf.assign
357
  [stringbuf.cons]: #stringbuf.cons
358
  [stringbuf.members]: #stringbuf.members
359
+ [stringbuf.seekoff.newoff]: #stringbuf.seekoff.newoff
360
+ [stringbuf.seekoff.pos]: #stringbuf.seekoff.pos
361
  [stringbuf.virtuals]: #stringbuf.virtuals
362
  [strings]: strings.md#strings
363
  [stringstream]: #stringstream
364
  [stringstream.assign]: #stringstream.assign
365
  [stringstream.cons]: #stringstream.cons
366
  [stringstream.members]: #stringstream.members
367
+ [syncstream]: #syncstream
368
+ [syncstream.osyncstream]: #syncstream.osyncstream
369
+ [syncstream.osyncstream.cons]: #syncstream.osyncstream.cons
370
+ [syncstream.osyncstream.members]: #syncstream.osyncstream.members
371
+ [syncstream.osyncstream.overview]: #syncstream.osyncstream.overview
372
+ [syncstream.syn]: #syncstream.syn
373
+ [syncstream.syncbuf]: #syncstream.syncbuf
374
+ [syncstream.syncbuf.assign]: #syncstream.syncbuf.assign
375
+ [syncstream.syncbuf.cons]: #syncstream.syncbuf.cons
376
+ [syncstream.syncbuf.members]: #syncstream.syncbuf.members
377
+ [syncstream.syncbuf.overview]: #syncstream.syncbuf.overview
378
+ [syncstream.syncbuf.special]: #syncstream.syncbuf.special
379
+ [syncstream.syncbuf.virtuals]: #syncstream.syncbuf.virtuals
 
 
 
 
 
 
 
 
 
380
  [temp.deduct]: temp.md#temp.deduct
 
381
  [wide.stream.objects]: #wide.stream.objects
382
 
383
  [^1]: It is the implementation’s responsibility to implement headers so
384
  that including `<iosfwd>` and other headers does not violate the
385
  rules about multiple occurrences of default arguments.
386
 
387
+ [^2]: If it is possible for them to do so, implementations should
388
+ initialize the objects earlier than required.
389
 
390
+ [^3]: Constructors and destructors for objects with static storage
391
+ duration can access these objects to read input from `stdin` or
392
+ write output to `stdout` or `stderr`.
393
 
394
  [^4]: Typically `long long`.
395
 
396
  [^5]: `streamsize` is used in most places where ISO C would use
397
+ `size_t`.
 
 
 
398
 
399
  [^6]: This implies that operations on a standard iostream object can be
400
  mixed arbitrarily with operations on the corresponding stdio stream.
401
  In practical terms, synchronization usually means that a standard
402
  iostream object and a standard stdio object share a buffer.
 
404
  [^7]: An implementation is free to implement both the integer array
405
  pointed at by `iarray` and the pointer array pointed at by `parray`
406
  as sparse data structures, possibly with a one-element cache for
407
  each.
408
 
409
+ [^8]: For example, because it cannot allocate space.
410
 
411
+ [^9]: For example, because it cannot allocate space.
412
 
413
  [^10]: This suggests an infinite amount of copying, but the
414
  implementation can keep track of the maximum element of the arrays
415
  that is nonzero.
416
 
 
446
 
447
  [^18]: This will be possible only in functions that are part of the
448
  library. The semantics of the constructor used in user code is as
449
  specified.
450
 
451
+ [^19]: The `sentry` constructor and destructor can also perform
452
+ additional implementation-dependent operations.
453
 
454
+ [^20]: This is done without causing an `ios_base::failure` to be thrown.
455
 
456
  [^21]: See, for example, the function signature
457
+ `ws(basic_istream&)`[[istream.manip]].
458
 
459
  [^22]: See, for example, the function signature
460
+ `dec(ios_base&)`[[basefield.manip]].
461
 
462
+ [^23]: This is done without causing an `ios_base::failure` to be thrown.
463
 
464
  [^24]: Note that this function is not overloaded on types `signed char`
465
  and `unsigned char`.
466
 
467
  [^25]: Note that this function is not overloaded on types `signed char`
 
487
  function can determine that no synchronization is necessary.
488
 
489
  [^32]: The `sentry` constructor and destructor can also perform
490
  additional implementation-dependent operations.
491
 
492
+ [^33]: without causing an `ios_base::failure` to be thrown.
493
 
494
  [^34]: See, for example, the function signature
495
+ `endl(basic_ostream&)`[[ostream.manip]].
496
 
497
  [^35]: See, for example, the function signature
498
+ `dec(ios_base&)`[[basefield.manip]].
499
 
500
+ [^36]: without causing an `ios_base::failure` to be thrown.
501
 
502
  [^37]: Note that this function is not overloaded on types `signed char`
503
  and `unsigned char`.
504
 
505
  [^38]: Note that this function is not overloaded on types `signed char`
 
514
  `basic_ostream<charT, traits>` object `cout` (the same as
515
  `cout << noshowbase`).
516
 
517
  [^40]: The macro `SEEK_END` is defined, and the function signatures
518
  `fopen(const char*, const char*)` and `fseek(FILE*, long, int)` are
519
+ declared, in `<cstdio>`.
520
 
521
  [^41]: POSIX® is a registered trademark of The IEEE. Windows® is a
522
  registered trademark of Microsoft Corporation. This information is
523
  given for the convenience of users of this document and does not
524
  constitute an endorsement by ISO or IEC of these products.