llvm triggered a GCC bug

Hi !

I tried to compile LLVM SVN 51761 with the Debian Etch provided
g++ ("g++ (GCC) 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)").
While doings this, I got this error:

llvm[4]: Compiling X86AsmPrinter.cpp for Release build
/usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/bits/stl_vector.h: In member function 'void llvm::SelectionDAGLowering::visitBitTestCase(llvm::MachineBasicBlock*, unsigned int, llvm::SelectionDAGISel::BitTestCase&)':
/usr/lib/gcc/i486-linux-gnu/4.1.2/../../../../include/c++/4.1.2/bits/stl_vector.h:610: internal compiler error: in expand_expr_addr_expr_1, at expr.c:6336
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html&gt; for instructions.
For Debian GNU/Linux specific bug reporting instructions,
see <URL:file:///usr/share/doc/gcc-4.1/README.Bugs>.
Preprocessed source stored into /tmp/ccPv8AcF.out file, please attach this to your bugreport.
make[4]: *** [/usr/src/llvm/obj.llvm/lib/CodeGen/SelectionDAG/Release/SelectionDAGISel.o] Error 1
make[4]: Leaving directory `/usr/src/llvm/obj.llvm/lib/CodeGen/SelectionDAG'
make[3]: *** [SelectionDAG/.makeall] Error 2

I know this this message says it's a gcc bug, but some months
ago I compiled LLVM with the same compiler without any problem, so
you might want to know about this as well.

I got my LLVM successfully compiled by compiling this one file by
removing the "-O3". g++ also failed with -O2 and -O1.

The llvm check seemed to work with this, I had

# of expected passes 2492
# of expected failures 6