diff options
author | Rical Jasan <ricaljasan@pacific.net> | 2017-06-15 21:12:39 -0700 |
---|---|---|
committer | Rical Jasan <ricaljasan@pacific.net> | 2017-06-15 21:26:20 -0700 |
commit | d08a7e4cbe43d5e4e4b14dea950fea623d96c1a1 (patch) | |
tree | 6f27987046ae0e8804f4d641c99ff1666652117a /manual/setjmp.texi | |
parent | 27691d5cec9b896ea0792151a27c6d7d7a4065ea (diff) | |
download | glibc-d08a7e4cbe43d5e4e4b14dea950fea623d96c1a1.tar.gz |
manual: Replace summary.awk with summary.pl.
The Summary is now generated from @standards, and syntax-checking is
performed. If invalid @standards syntax is detected, summary.pl will
fail, reporting all errors. Failure and error reporting is disabled
for now, however, since much of the manual is still incomplete
wrt. header and standards annotations.
Note that the sorting order of the Summary has changed; summary.pl
respects the locale, like summary.awk did, but the use of LC_ALL=C is
introduced in the Makefile. Other notable deviations are improved
detection of the annotated elements' names, which are used for
sorting, and improved detection of the @node used to reference into
the manual. The most noticeable difference in the rendered Summary is
that entries may now contain multiple lines, one for each header and
standard combination.
summary.pl accepts a `--help' option, which details the expected
syntax of @standards. If errors are reported, the user is directed to
this feature for further information.
* manual/Makefile: Generate summary.texi with summary.pl.
Force use of the C locale. Update Perl dependency comment.
* manual/header.texi: Update reference to summary.awk.
* manual/macros.texi: Refer authors to `summary.pl --help'.
* manual/summary.awk: Remove file.
* manual/summary.pl: New file. Generate summary.texi, and
check for @standards-related syntax errors.
* manual/argp.texi: Convert header and standards @comments to
@standards.
* manual/arith.texi: Likewise.
* manual/charset.texi: Likewise.
* manual/conf.texi: Likewise.
* manual/creature.texi: Likewise.
* manual/crypt.texi: Likewise.
* manual/ctype.texi: Likewise.
* manual/debug.texi: Likewise.
* manual/errno.texi: Likewise.
* manual/filesys.texi: Likewise.
* manual/getopt.texi: Likewise.
* manual/job.texi: Likewise.
* manual/lang.texi: Likewise.
* manual/llio.texi: Likewise.
* manual/locale.texi: Likewise.
* manual/math.texi: Likewise.
* manual/memory.texi: Likewise.
* manual/message.texi: Likewise.
* manual/pattern.texi: Likewise.
* manual/pipe.texi: Likewise.
* manual/process.texi: Likewise.
* manual/resource.texi: Likewise.
* manual/search.texi: Likewise.
* manual/setjmp.texi: Likewise.
* manual/signal.texi: Likewise.
* manual/socket.texi: Likewise.
* manual/startup.texi: Likewise.
* manual/stdio.texi: Likewise.
* manual/string.texi: Likewise.
* manual/sysinfo.texi: Likewise.
* manual/syslog.texi: Likewise.
* manual/terminal.texi: Likewise.
* manual/threads.texi: Likewise.
* manual/time.texi: Likewise.
* manual/users.texi: Likewise.
Diffstat (limited to 'manual/setjmp.texi')
-rw-r--r-- | manual/setjmp.texi | 33 |
1 files changed, 11 insertions, 22 deletions
diff --git a/manual/setjmp.texi b/manual/setjmp.texi index 94d16becdc..710252881c 100644 --- a/manual/setjmp.texi +++ b/manual/setjmp.texi @@ -96,17 +96,15 @@ performing non-local exits. These facilities are declared in @file{setjmp.h}. @pindex setjmp.h -@comment setjmp.h -@comment ISO @deftp {Data Type} jmp_buf +@standards{ISO, setjmp.h} Objects of type @code{jmp_buf} hold the state information to be restored by a non-local exit. The contents of a @code{jmp_buf} identify a specific place to return to. @end deftp -@comment setjmp.h -@comment ISO @deftypefn Macro int setjmp (jmp_buf @var{state}) +@standards{ISO, setjmp.h} @safety{@prelim{}@mtsafe{}@assafe{}@acsafe{}} @c _setjmp ok @c __sigsetjmp(!savemask) ok @@ -117,9 +115,8 @@ execution state of the program in @var{state} and returns zero. If @var{state}, @code{setjmp} returns a nonzero value. @end deftypefn -@comment setjmp.h -@comment ISO @deftypefun void longjmp (jmp_buf @var{state}, int @var{value}) +@standards{ISO, setjmp.h} @safety{@prelim{}@mtsafe{}@asunsafe{@ascuplugin{} @asucorrupt{} @asulock{/hurd}}@acunsafe{@acucorrupt{} @aculock{/hurd}}} @c __libc_siglongjmp @ascuplugin @asucorrupt @asulock/hurd @acucorrupt @aculock/hurd @c _longjmp_unwind @ascuplugin @asucorrupt @acucorrupt @@ -207,16 +204,14 @@ The facilities in this section are declared in the header file @file{setjmp.h}. @pindex setjmp.h -@comment setjmp.h -@comment POSIX.1 @deftp {Data Type} sigjmp_buf +@standards{POSIX.1, setjmp.h} This is similar to @code{jmp_buf}, except that it can also store state information about the set of blocked signals. @end deftp -@comment setjmp.h -@comment POSIX.1 @deftypefun int sigsetjmp (sigjmp_buf @var{state}, int @var{savesigs}) +@standards{POSIX.1, setjmp.h} @safety{@prelim{}@mtsafe{}@asunsafe{@asulock{/hurd}}@acunsafe{@aculock{/hurd}}} @c sigsetjmp @asulock/hurd @aculock/hurd @c __sigsetjmp(savemask) @asulock/hurd @aculock/hurd @@ -227,9 +222,8 @@ of blocked signals is saved in @var{state} and will be restored if a @code{siglongjmp} is later performed with this @var{state}. @end deftypefun -@comment setjmp.h -@comment POSIX.1 @deftypefun void siglongjmp (sigjmp_buf @var{state}, int @var{value}) +@standards{POSIX.1, setjmp.h} @safety{@prelim{}@mtsafe{}@asunsafe{@ascuplugin{} @asucorrupt{} @asulock{/hurd}}@acunsafe{@acucorrupt{} @aculock{/hurd}}} @c Alias to longjmp. This is similar to @code{longjmp} except for the type of its @var{state} @@ -258,9 +252,8 @@ contained. The type is also used in a few more places as we will see. The types and functions described in this section are all defined and declared respectively in the @file{ucontext.h} header file. -@comment ucontext.h -@comment SVID @deftp {Data Type} ucontext_t +@standards{SVID, ucontext.h} The @code{ucontext_t} type is defined as a structure with at least the following elements: @@ -289,9 +282,8 @@ applications less portable. Objects of this type have to be created by the user. The initialization and modification happens through one of the following functions: -@comment ucontext.h -@comment SVID @deftypefun int getcontext (ucontext_t *@var{ucp}) +@standards{SVID, ucontext.h} @safety{@prelim{}@mtsafe{@mtsrace{:ucp}}@assafe{}@acsafe{}} @c Linux-only implementations in assembly, including sigprocmask @c syscall. A few cases call the sigprocmask function, but that's safe @@ -318,9 +310,8 @@ Once the context variable is initialized it can be used as is or it can be modified using the @code{makecontext} function. The latter is normally done when implementing co-routines or similar constructs. -@comment ucontext.h -@comment SVID @deftypefun void makecontext (ucontext_t *@var{ucp}, void (*@var{func}) (void), int @var{argc}, @dots{}) +@standards{SVID, ucontext.h} @safety{@prelim{}@mtsafe{@mtsrace{:ucp}}@assafe{}@acsafe{}} @c Linux-only implementations mostly in assembly, nothing unsafe. @@ -366,9 +357,8 @@ can, depending on the direction the stack grows, be different). This difference makes the @code{makecontext} function hard to use and it requires detection of the platform at compile time. -@comment ucontext.h -@comment SVID @deftypefun int setcontext (const ucontext_t *@var{ucp}) +@standards{SVID, ucontext.h} @safety{@prelim{}@mtsafe{@mtsrace{:ucp}}@asunsafe{@asucorrupt{}}@acunsafe{@acucorrupt{}}} @c Linux-only implementations mostly in assembly. Some ports use @c sigreturn or swapcontext syscalls; others restore the signal mask @@ -411,9 +401,8 @@ The @code{setcontext} function simply replaces the current context with the one described by the @var{ucp} parameter. This is often useful but there are situations where the current context has to be preserved. -@comment ucontext.h -@comment SVID @deftypefun int swapcontext (ucontext_t *restrict @var{oucp}, const ucontext_t *restrict @var{ucp}) +@standards{SVID, ucontext.h} @safety{@prelim{}@mtsafe{@mtsrace{:oucp} @mtsrace{:ucp}}@asunsafe{@asucorrupt{}}@acunsafe{@acucorrupt{}}} @c Linux-only implementations mostly in assembly. Some ports call or @c inline getcontext and/or setcontext, adjusting the saved context in |