AIX testsuite failures

David Edelsohn dje@watson.ibm.com
Thu May 5 03:05:00 GMT 2005


>>>>> Mark Mitchell writes:

Mark> Second, I'm not quite sure why the HAVE_GTHR_DEFAULT test is not good 
Mark> enough.  If AIX has no threads, then why is that defined?  Or, if AIX 
Mark> has threads, why shouldn't the tests be run?

	GCC on AIX includes a pthread multilib, but pthreads (gthreads)
functionality only is provided when that multilib is enabled with an extra
option.  Other systems provide a dummy implementation allowing pthread
symbols to exist when running single threaded, but AIX does not.
libstdc++ testsuite does not run with the -pthread option.

Mark> We don't have access to $gthread_file in DejaGNU, so what's the right 
Mark> way to do this without depending on the build directory?  I propose that 
Mark> I have DejaGNU compile "#include <bits/gthr.h>" with "-E -dM" and grep 
Mark> for "__GTHREADS" in the resulting output.  I think that will correctly 
Mark> handle and command-line options that might change the threading model, 
Mark> etc.  David, can you confirm that doing that test will correctly report 
Mark> that threads are absent on AIX?

	I think that the test file needs to be:

#include <bits/c++config.h>
#include <bits/gthr.h>

Compiling those two lines with "-E -dM" correctly determines the existence
of __GTHREADS.

Thanks, David



More information about the Libstdc++ mailing list