This is a GCC bug that affects GCC 4.0, GCC 4.2, and llvm-gcc 4.2. I will post a fix shortly.
Created attachment 24067 [details] Proposed patch
Comment on attachment 24067 [details] Proposed patch r=me
Landed in r37253.
Created attachment 24075 [details] Proposed patch
Comment on attachment 24075 [details] Proposed patch r=me
Landed in r37268.