diff options
author | Richard Smith <richard-llvm@metafoo.co.uk> | 2012-10-04 22:23:07 +0000 |
---|---|---|
committer | Richard Smith <richard-llvm@metafoo.co.uk> | 2012-10-04 22:23:07 +0000 |
commit | c339393067438596599b142a8950f0e8694e2f1a (patch) | |
tree | 3930fc49dd06456fe81bc93c1a896f27886cbec9 | |
parent | d1a55a6631b11b6c5364772023451c547eafedee (diff) |
libstdc++-4.6 needs the same common_type fix as libstdc++-4.7. Other than that,
Clang can now cope with its eccentricities in C++11 mode.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@165265 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | www/cxx_status.html | 3 | ||||
-rw-r--r-- | www/libstdc++4.6-clang11.patch | 11 |
2 files changed, 13 insertions, 1 deletions
diff --git a/www/cxx_status.html b/www/cxx_status.html index 8e143f6b00..dbf5797c05 100644 --- a/www/cxx_status.html +++ b/www/cxx_status.html @@ -40,7 +40,8 @@ <p>You can use Clang in C++11 mode either with <a href="http://libcxx.llvm.org/">libc++</a> or with gcc's libstdc++. -Patches are needed to make <a href="libstdc++4.4-clang0x.patch">libstdc++-4.4</a> +Patches are needed to make <a href="libstdc++4.4-clang0x.patch">libstdc++-4.4</a>, +<a href="libstdc++4.6-clang11.patch">libstdc++-4.6</a>, and <a href="libstdc++4.7-clang11.patch">libstdc++-4.7</a> work with Clang in C++11 mode.</p> diff --git a/www/libstdc++4.6-clang11.patch b/www/libstdc++4.6-clang11.patch new file mode 100644 index 0000000000..cc2cb1404d --- /dev/null +++ b/www/libstdc++4.6-clang11.patch @@ -0,0 +1,11 @@ +--- type_traits.orig 2012-10-04 15:20:43.452992946 -0700 ++++ type_traits 2012-10-04 15:21:32.423657167 -0700 +@@ -1110,7 +1110,7 @@ + + template<typename _Tp, typename _Up> + struct common_type<_Tp, _Up> +- { typedef decltype(true ? declval<_Tp>() : declval<_Up>()) type; }; ++ { typedef typename decay<decltype(true ? declval<_Tp>() : declval<_Up>())>::type type; }; + + template<typename _Tp, typename _Up, typename... _Vp> + struct common_type<_Tp, _Up, _Vp...> |