I've built Libtool and run the testsuites with CC=g++ on GNU/Linux, the following patch fixes the fallout. Pushed as obvious.
Thanks, Ralf Fix bindir and dlopen tests for C++ compilers (CC=g++). * tests/bindir.at (bindir basic lib test, bindir install tests): Include stdlib.h rather than declaring abort. * tests/lt_dlopenext.at (lt_dlopenext error messages): Use `extern "C"' annotation for dlsym'ed function in C++ mode. diff --git a/tests/bindir.at b/tests/bindir.at index 859b1c4..e49853d 100644 --- a/tests/bindir.at +++ b/tests/bindir.at @@ -128,9 +128,9 @@ int bar (void) { return y + baz ();} ]]) AT_DATA([main.c],[[ +#include <stdlib.h> extern int baz (void); extern int bar (void); -extern void abort (void); int main() { if (baz () + bar () - 25) abort (); return 0; @@ -237,9 +237,9 @@ int bar (void) { return y + baz ();} ]]) AT_DATA([main.c],[[ +#include <stdlib.h> extern int baz (void); extern int bar (void); -extern void abort (void); int main() { if (baz () + bar () - 25) abort (); return 0; diff --git a/tests/lt_dlopenext.at b/tests/lt_dlopenext.at index e83f723..84dc8e5 100644 --- a/tests/lt_dlopenext.at +++ b/tests/lt_dlopenext.at @@ -41,6 +41,9 @@ AT_DATA([simple-module.c], [[ #include <stdio.h> +#ifdef __cplusplus +extern "C" +#endif int run (const char *argument) {