------- Comment #1 from laurent at guerby dot net 2008-12-10 11:54 ------- The missing function is called only in one place, visibly to set thread affinity:
gcc/ada/s-taprop-irix.adb if Self_ID.Common.Task_Info /= null and then Self_ID.Common.Task_Info.Scope = PTHREAD_SCOPE_SYSTEM and then Self_ID.Common.Task_Info.Runon_CPU /= ANY_CPU then Result := pthread_setrunon_np (To_Int (Self_ID.Common.Task_Info.Runon_CPU)); pragma Assert (Result = 0); end if; The simplest thing to do would be to add #ifdef to define this function in gcc/ada/adaint.c as dummy returning zero when IRIX. I don't have access to an IRIX system so I don't know what #ifdef are available (or may be configure test): Could you try to add in gcc/ada/adaint.c the following definition: int pthread_setrunon_np (int cpu) { return 0; } Then see if it fixes the ACATS failures, then try to find out #ifdef that trigger only on IRIX 6.2. Thanks in advance, -- laurent at guerby dot net changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |laurent at guerby dot net Keywords| |link-failure http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38400