All-
Action Item 42 was:
> The problem is the relationship between atexit() and dlopen() [and
> dlclose()]. Should atexit registered funcs be called on dlclose.
>
> Should the behavior be run in dlcose,, or wait till exit? If wait till
> exit, is undefined behavior allowed? Implementation defined either on
> dlclose or on exit. Or make dlopen'ed modules forbidden to use atext.
The recommendation (from Ulrich Drepper via Clive Feather) was a change in
the atexit() text as shown below. Based on review I recommend that we
accept this, with the further text changes I have added:
> CX shading shown using {{shaded text}}
>
>
> DESCRIPTION
>
> CX The functionality described on this reference page is aligned with
> the ISO C standard. Any conflict between the requirements
> described here and the ISO C standard is unintentional. This
> volume of IEEE Std 1003.1-200x defers to the ISO C standard.
>
> The atexit() function registers the function pointed to by func,
> {{CX}} to be called without arguments at normal program termination {{or
> when the object defining the function is unloaded}}.
> At normal program termination, all functions registered by the
> atexit() function shall be called, in the reverse order of their
> {{CX}} registration. {{On object unloading, any functions registered by the
> object being unloaded are called in the reverse order of their
> registration.}} An exception is that a function is called after
> any previously registered functions that had already been called
> at the time it was registered.
> Normal termination occurs either by a call to
> {{CX}} exit() or a return from main( ). {{Object unloading occurs by a
> call to dlclose().}} At least 32 functions can be registered with
> atexit().
>
> CX After a successful call to any of the exec functions, any functions
> previously registered by atexit() shall no longer be registered.
> After a successful call to any of the exec functions, any
> functions previously registered by atexit() are no longer
> registered.
Mark
--
Mark S. Brown yyyyy@xxxxxxxxxx
Senior Technical Staff Member 512.838.3926 T/L678.3926
AIX and Linux Technologies Mark Brown/Austin/IBM
IBM Corporation, Austin, Texas
|