Difference between revisions of "C++14 support in compilers"

From KlayGE
Jump to: navigation, search
Line 4: Line 4:
 
! Language Feature !! Proposal !! MSVC !! GCC !! ICC !! Clang !! Alternative
 
! Language Feature !! Proposal !! MSVC !! GCC !! ICC !! Clang !! Alternative
 
|-
 
|-
| Tweak to certain C++ contextual conversions || [http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2012/n3323.pdf N3323] || No || '''4.9''' || No || No ||  
+
| Tweak to certain C++ contextual conversions || [http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2012/n3323.pdf N3323] || No || '''4.9''' || No || '''3.4''' ||  
 
|-
 
|-
 
| Binary literals || [http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2012/n3472.pdf N3472] || No || '''4.9''' || No || '''2.9''' ||
 
| Binary literals || [http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2012/n3472.pdf N3472] || No || '''4.9''' || No || '''2.9''' ||
Line 12: Line 12:
 
| Runtime-sized arrays with automatic storage duration || [http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3639.html N3639] || No || '''4.9''' || No || No ||
 
| Runtime-sized arrays with automatic storage duration || [http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3639.html N3639] || No || '''4.9''' || No || No ||
 
|-
 
|-
| Generalized lambda capture (init-capture) || [http://isocpp.org/files/papers/N3648.html N3648] || No || '''4.9''' || No || No ||
+
| Generalized lambda capture (init-capture) || [http://isocpp.org/files/papers/N3648.html N3648] || No || '''4.9''' || No || '''3.4''' ||
 
|-
 
|-
| Generic (polymorphic) lambda expressions || [http://isocpp.org/files/papers/N3649.html N3649] || '''Nov 13''' || No || No || No ||
+
| Generic (polymorphic) lambda expressions || [http://isocpp.org/files/papers/N3649.html N3649] || '''Nov 13''' || No || No || '''3.4''' ||
 
|-
 
|-
| Variable templates || [http://isocpp.org/files/papers/N3651.pdf N3651] || No || No || No || No ||
+
| Variable templates || [http://isocpp.org/files/papers/N3651.pdf N3651] || No || No || No || '''3.4''' ||
 
|-
 
|-
| Relaxing requirements on constexpr functions || [http://isocpp.org/files/papers/N3652.html N3652] || No || No || No || No ||
+
| Relaxing requirements on constexpr functions || [http://isocpp.org/files/papers/N3652.html N3652] || No || No || No || '''3.4''' ||
 
|-
 
|-
 
| Member initializers and aggregates || [http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3653.html N3653] || No || No || No || '''3.3''' ||
 
| Member initializers and aggregates || [http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3653.html N3653] || No || No || No || '''3.3''' ||
 
|-
 
|-
| Clarifying memory allocation || [http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3664.html N3664] || No || No || No || No ||
+
| Clarifying memory allocation || [http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3664.html N3664] || No || No || No || '''3.4''' ||
 
|-
 
|-
| Sized deallocation || [http://isocpp.org/files/papers/n3778.html N3778] || No || No || No || No ||
+
| [[deprecated]] attribute || [http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3760.html N3760] || No || No || No || '''3.4''' ||
 
|-
 
|-
| Single-quotation-mark as a digit separator || [http://isocpp.org/files/papers/N3781.pdf N3781] || No || No || No || No ||
+
| Sized deallocation || [http://isocpp.org/files/papers/n3778.html N3778] || No || No || No || '''3.4''' ||
 +
|-
 +
| Single-quotation-mark as a digit separator || [http://isocpp.org/files/papers/N3781.pdf N3781] || No || No || No || '''3.4''' ||
 
|}
 
|}
  

Revision as of 05:52, 15 January 2014

C++14 Core Language Features

Language Feature Proposal MSVC GCC ICC Clang Alternative
Tweak to certain C++ contextual conversions N3323 No 4.9 No 3.4
Binary literals N3472 No 4.9 No 2.9
Return type deduction for normal functions N3638 Nov 13 4.9 No 3.3
Runtime-sized arrays with automatic storage duration N3639 No 4.9 No No
Generalized lambda capture (init-capture) N3648 No 4.9 No 3.4
Generic (polymorphic) lambda expressions N3649 Nov 13 No No 3.4
Variable templates N3651 No No No 3.4
Relaxing requirements on constexpr functions N3652 No No No 3.4
Member initializers and aggregates N3653 No No No 3.3
Clarifying memory allocation N3664 No No No 3.4
deprecated attribute N3760 No No No 3.4
Sized deallocation N3778 No No No 3.4
Single-quotation-mark as a digit separator N3781 No No No 3.4

See Also

C++11 support in compilers

References