This might be the same issue reported here.
It is a known issue with the linker from xcode 3.2.2. It incorrectly resolves relocations against symbols which name start with 'L' character. The same object files, being linked with a previous linker (from 10.5.8) works fine on any version of macOS, including 10.6.3.
We are working on a fix in the compiler to work around this linker problem. Could you try Xcode 3.2.1 instead?
Unfortunately we have a single mac, with 10.6.4 and xcode 3.2.2
if I read correctly, the issue above is the opposite: an x64 executable never works, an x86 executable launched in gdb inside xcode works, andthe same x86 executable launched in terminal crashes.
further, we tried a smaller project that includes roughly the same headers, and it crashes on the very same line, with EXC_BAD_ACCESS.
anyway, the very same code gives different (but catastrophic) errors in the windows version too: if we disable completely interprocedural optimizations (which in the standard debug configuration are active?) and we disable completely precompiled headers, we get a linker crash, stating that a particular module has corrupt debug information. recompiling that module apparently works, but anyway we cannot link, so we cannot test if this mac crash also appears in windows.
Since that has not happened, it may be the case that you are reporting a new bug in the compiler. Or, the bug may be in your code. To proceed, we need a test case with which we can reproduce the problem.