Package: autoconf
Version: 2.64-1

After upgrading from autoconf 2.63 to 2.64 our configure.in script is starting to fail due to the ac_fn_cxx_try_run helper function being undefined on first use.

I tracked it down to a works or fails case depending on whether the first instance of AC_RUN_IFELSE is wrapped in AC_CACHE_CHECK


WORKING:

 AC_RUN_IFELSE([AC_LANG_SOURCE([[int main(){return 0;}]])],[],[],[])

 AC_CACHE_CHECK(if working, foo_works,

AC_RUN_IFELSE([AC_LANG_SOURCE([[int main(){return 1;}]])],[foo_works=yes],[foo_works=no],[])

)


FAILING:

 AC_CACHE_CHECK(if working, foo_works,

AC_RUN_IFELSE([AC_LANG_SOURCE([[int main(){return 1;}]])],[foo_works=yes],[foo_works=no],[])

)

 AC_RUN_IFELSE([AC_LANG_SOURCE([[int main(){return 0;}]])],[],[],[])



In the working case the first instance of AC_RUN_IFELSE seems to trigger a global very early setup definition to be added.

The second failing case, seems to only add the definition right inside the if-else-fi statement created by AC_CACHE_CHECK immediately before that usage. This definition is not available to other code outside that scope which needs it later.


AYJ



--
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]

Reply via email to