Hi. According to the log entry, this problem has been worked around in r166455.
---<snip>--- r166455 | rsmith | 2012-10-23 02:32:41 +0200 (Die, 23. Okt 2012) | 14 Zeilen Ugly ugly hack for libstdc++-4.6 and libstdc++-4.7 compatibility. These libraries have an incorrect definition of std::common_type (inherited from a bug in the standard -- see LWG issue 2141), whereby they produce reference types when they should not. If we instantiate a typedef named std::common_type<...>::type, which is defined in a system header as decltype(... ? ... : ...), and the decltype produces a reference type, convert it to the non-reference type. (This doesn't affect any LWG2141-conforming implementation of common_type, such as libc++'s, because the default implementation of common_type<...>::type isn't supposed to produce a reference type.) This is horrible. I'm really sorry. :( Better ideas appreciated! ---<snip>--- LWG 2141: http://cplusplus.github.com/LWG/lwg-unresolved.html#2141 -- CYa, ⡍⠁⠗⠊⠕
pgpMVcIp4zHTI.pgp
Description: PGP signature