Remove -fexceptions configure test
Joseph Myers
joseph@codesourcery.com
Thu Oct 15 22:06:00 GMT 2015
On Thu, 15 Oct 2015, Roland McGrath wrote:
> What is the reason for -fexceptions in all those other places? If
> each is actually a uses-callbacks case, then we should use that
> variable to clarify that in the documentation. I think that's the
> actual case for all the stdio cases, because they can lead to
> callbacks via _IO_JUMPS.
I don't know the specific reasons. But cleaning up such uses has been
listed in <https://sourceware.org/glibc/wiki/Development_Todo/Master> for
some time: "Where makefiles use -fexceptions, -fasynchronous-unwind-tables
or $(exceptions), make them use makefile variables that relate to the
logical reason those options are needed (e.g. "may be cancelled"), as
described in http://sourceware.org/ml/libc-alpha/2012-11/msg00147.html -
and more generally, develop a way to check for consistency issues where a
function using callbacks isn't marked as such, or where a function may be
cancelled or uses callbacks but a caller of that function isn't marked
accordingly (in some cases that may be OK, however).". This patch is part
of a different listed todo item, "Go through configure tests (both in the
toplevel configure and in subdirectory configure and preconfigure scripts)
and remove tests whose results can be assumed based on the minimum
supported GCC and binutils versions (and the associated conditionals on
the results of those tests).".
Whatever the specific reasons, $(exceptions) and -fexceptions are used
interchangably and there is no useful abstraction that I can see involved
in the $(exceptions) variable (unlike in $(uses-callbacks)).
--
Joseph S. Myers
joseph@codesourcery.com
More information about the Libc-alpha
mailing list