I've tried to reduce this down to a smaller case, but using -save-temps resulted in a file which does not manifest the problem. But then, maybe it shouldn't have.
My project is publically avaliable at http://github.com/jwiegley/ledger. Perhaps this is too oblique, but if you pull the project and run "./acprep make --no-patch --pch", it will generate a Bus Error when compiling as follows (assuming you have Boost, GMP and MPFR devel libraries installed as well): libtool: compile: /opt/local/bin/g++-mp-4.4 -DHAVE_CONFIG_H -I. -I/Users/johnw/Projects/ledger -I/Users/johnw/Projects/ledger/src -I/Users/johnw/Projects/ledger/lib -I/Users/johnw/Projects/ledger/lib/utfcpp/source -isystem /usr/local/include -isystem /usr/local/include/boost-1_38 -isystem /usr/local/include -isystem /usr/include/python2.5 -isystem /opt/local/include -isystem /usr/local/stow/cppunit/include -fpch-deps -Wconversion -ansi -Wall -Winvalid-pch -Wextra -Wcast-align -Wcast-qual -Wfloat-equal -Wmissing-field-initializers -Wno-endif-labels -Woverloaded-virtual -Wsign-compare -Wsign-promo -Wstrict-null-sentinel -Wwrite-strings -Wno-old-style-cast -Wno-deprecated -g -pipe -MT libledger_report_la-stats.lo -MD -MP -MF .deps/libledger_report_la-stats.Tpo -c /Users/johnw/Projects/ledger/src/stats.cc -o libledger_report_la-stats.o cc1plus: internal compiler error: Bus error Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions. make[2]: *** [libledger_report_la-stats.lo] Error 1 make[1]: *** [all-recursive] Error 1 make: *** [all] Error 2 If I run with -H, I see: . /Users/johnw/Projects/ledger/src/derive.h .. /Users/johnw/Projects/ledger/src/value.h ... /Users/johnw/Projects/ledger/src/balance.h .... /Users/johnw/Projects/ledger/src/amount.h ..... /Users/johnw/Projects/ledger/src/utils.h .....! ./system.hh.gch /Users/johnw/Projects/ledger/src/utils.h . /Users/johnw/Projects/ledger/src/error.h .. /Users/johnw/Projects/ledger/src/accum.h /Users/johnw/Projects/ledger/src/times.h /Users/johnw/Projects/ledger/src/flags.h (null) /Users/johnw/Projects/ledger/src/mask.h (null) /Users/johnw/Projects/ledger/src/xact.h . /Users/johnw/Projects/ledger/src/item.h .. /Users/johnw/Projects/ledger/src/scope.h ... /Users/johnw/Projects/ledger/src/op.h .... /Users/johnw/Projects/ledger/src/expr.h . /Users/johnw/Projects/ledger/src/predicate.h .. /Users/johnw/Projects/ledger/src/commodity.h /Users/johnw/Projects/ledger/src/post.h /Users/johnw/Projects/ledger/src/account.h /Users/johnw/Projects/ledger/src/report.h . /Users/johnw/Projects/ledger/src/interactive.h . /Users/johnw/Projects/ledger/src/chain.h . /Users/johnw/Projects/ledger/src/stream.h . /Users/johnw/Projects/ledger/src/option.h /Users/johnw/Projects/ledger/src/session.h . /Users/johnw/Projects/ledger/src/journal.h .. /Users/johnw/Projects/ledger/src/hooks.h (null) cc1plus: internal compiler error: Bus error I'm running on OS X 10.5.6, although I see the same bug on the latest Ubuntu using g++ 4.3. My gcc version is: gcc-mp-4.4 (GCC) 4.4.0 20090306 (experimental) System uname -a: Darwin Hermes 9.6.0 Darwin Kernel Version 9.6.0: Mon Nov 24 17:37:00 PST 2008; root:xnu-1228.9.59~1/RELEASE_I386 i386 This bug happens with 4.3.3 on my system as well, but works exactly as expected with 4.2.1: i686-apple-darwin9-gcc-4.2.1 (GCC) 4.2.1 (Apple Inc. build 5566) -- Summary: Using pre-compiled headers results in a bus error Product: gcc Version: 4.4.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: pch AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: johnw at gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39420