On Tue, Feb 22, 2011 at 17:05, Roberto Bagnara <bagnara@cs.unipr.it> wrote:
And I'm doubt the assumption GMP does not support exception when cross compiling:
$ git diff m4/ac_check_gmp.m4 diff --git a/m4/ac_check_gmp.m4 b/m4/ac_check_gmp.m4 index c5dd1c9..8c2af74 100644 --- a/m4/ac_check_gmp.m4 +++ b/m4/ac_check_gmp.m4 @@ -181,8 +181,8 @@ int main() { ac_cv_gmp_supports_exceptions=yes, AC_MSG_RESULT(no) ac_cv_gmp_supports_exceptions=no, - AC_MSG_RESULT([assuming not]) - ac_cv_gmp_supports_exceptions=no) + AC_MSG_RESULT([assuming yes]) + ac_cv_gmp_supports_exceptions=yes)
gmp_supports_exceptions=${ac_cv_gmp_supports_exceptions} if test x"$gmp_supports_exceptions" = xyes
How does this affect you? I mean, that setting only affects the PPL testsuite and if you are cross-compiling you are not using it.
But after the configure script done, I got the following warning: ... config.status: executing libtool commands configure: WARNING: CANNOT PROPAGATE EXCEPTIONS BACK FROM GMP: *** MEMORY EXHAUSTION MAY RESULT IN ABRUPT TERMINATION. *** This is OK, if you do not plan to use the bounded memory capabilities *** offered by the PPL. Otherwise, if you are using GCC or the Intel C/C++ *** compiler, please make sure you use a version of GMP compiled with the *** `-fexceptions' compiler option. *** To build such a version, you can configure GMP as follows: *** CPPFLAGS=-fexceptions ./configure --enable-cxx --prefix=/usr/local Since the most gcc distro already support exceptions at default, so I think we had better assume gmp support exceptions at default. -- Dongsheng