This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: Remove -fexceptions configure test
- From: Joseph Myers <joseph at codesourcery dot com>
- To: Roland McGrath <roland at hack dot frob dot com>
- Cc: <libc-alpha at sourceware dot org>
- Date: Thu, 15 Oct 2015 22:06:47 +0000
- Subject: Re: Remove -fexceptions configure test
- Authentication-results: sourceware.org; auth=none
- References: <alpine dot DEB dot 2 dot 10 dot 1510152146440 dot 6002 at digraph dot polyomino dot org dot uk> <20151015215813 dot EAB7F2C3C0C at topped-with-meat dot com>
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