target/9603: SCO 5 build of gcc-3.2.2 fails with i386.c: line 927: error: undefined symbol: DEFAULT_PCC_STRUCT_RETURN

william@nscs.fast.net william@nscs.fast.net
Fri Feb 14 23:53:00 GMT 2003


I think that the problem was due using DEFAULT_PCC_STRUCT_RETURN in
an os-independent file (i386.c) and not supplying definitions in all of
the os-dependent places that use it.  SCO OpenServer is Pentium-based.
I submitted a patch for the SCO-specific header sco5.h.
  http://gcc.gnu.org/ml/gcc-bugs/2003-02/msg00300.html
Someone else who had this problem with Solaris/Intel
submitted a patch for i386.h.  I think that most i386 builds
eventually include i386.h eventually.
  http://gcc.gnu.org/ml/gcc-bugs/2003-02/msg00282.html  
I think that the each operating system needs a separate patch
in its os-specific header because the value of the macro depends
on the operating system specific rules on whether functions can
return structures and unions in registers instead of memory.
It is possible that iBCS2 defines this and applies to all i386
environments, so one value might work for everything.
It is my theory that changes like this are someone's subtle
method of finding out which build targets can be deprecated...
Good luck with your Darwin-hosted i386 cross-compile!
It sounds painful -- I'm afraid to ask why you need to do it.
William
http://williambader.com



More information about the Gcc-bugs mailing list