Bug#666539: Supposedly fixed with r166455 of LLVM SVN

Mario Lang mlang at debian.org
Tue Oct 23 20:56:55 UTC 2012


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,
  ⡍⠁⠗⠊⠕
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/pkg-llvm-team/attachments/20121023/cde9c9c4/attachment.pgp>


More information about the Pkg-llvm-team mailing list