Nicely done! Thanks for taking the time to do the full-on gcc bug report with .i file.
If at some point in the future you want to ascend to the next level of gcc bug reporting awesomeness, read up on delta debugging, an easy technique for automatically reducing the .i file to (nearly) the smallest possible input file that causes the crash. http://en.wikipedia.org/wiki/Delta_Debugging
Or don't; it's an easy next step for the gcc professionals, given what you gave them. - Dan