Created attachment 328354 [details, diff]
patch backported from trunk
Compiling the following code segfaults clang.
Note that putting nontrivial types in a union is a C++11 feature not implemented by clang 3.0, and it is fixed on trunk for 3.2
I've put the attached patch in /etc/portage/patches/sys-devel/clang/ and it resolves the issue for me.
// compile with -std=c++11
Thanks for the report and patch for those that used 3.1, marking fixed now that 3.2 (and soon 3.3) are in tree :)