[GiNaC-devel] Shared lib calls exit
Richard B. Kreckel
kreckel at ginac.de
Sun Feb 1 18:28:21 CET 2009
Fabian Affolter wrote:
> I'm packaging ginac for the Fedora Package Collection. Now I have
> the following rpmlint warning on ginac 1.4.4. Can you have a look
> at it and have it fixed for the next release, please?
>
> [fab at laptop24 i386]$ rpmlint -i ginac*
> ginac.i386: W: shared-lib-calls-exit /usr/lib/libginac-1.4.so.0.0.4
> exit at GLIBC_2.0
> This library package calls exit() or _exit(), probably in a non-fork()
> context. Doing so from a library is strongly discouraged - when a
> library function calls exit(), it prevents the calling program from
> handling the error, reporting it to the user, closing files properly,
> and cleaning up any state that the program has. It is preferred for the
> library to return an actual error code and let the calling program
> decide how to handle the situation.
>
> Perhaps the intention was to *return* something, and perhaps non-zero?
GiNaC itself doesn't call exit() or _exit(). What you're seeing is an
artifact introduced into the library by flex.
I suggest to ignore this warning for the time being. GiNaC-1.5 won't
make use of flex any more in the library proper.
Best
-richy.
--
Richard B. Kreckel
<http://www.ginac.de/~kreckel/>
More information about the GiNaC-devel
mailing list