Dear John,
I hadn't thought of using clang. I'll give it a try.
I have encountered only two problems with the clang compiler and linker.
(1) The won't compile assembler with .stabs, which means it won't compile the output of GCC3.4.6. No longer a problem when trying to compile GPC with GCC 4.3.6.
(2) The compiler ignores the -std=gnu89 flag, which is necessary to get around some gnu90 incompatibility errors I encountered on GPC 4.3.5.
Best, Kevan