From 5bcd7106b5aa60da1648b7c5e8426205092c1954 Mon Sep 17 00:00:00 2001 From: "Duncan P. N. Exon Smith" Date: Thu, 17 Apr 2014 18:02:34 +0000 Subject: [PATCH] C++11: Document some limitations imposed by MSVC git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@206480 91177308-0d34-0410-b5e6-96231b3b80d8 --- docs/CodingStandards.rst | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/docs/CodingStandards.rst b/docs/CodingStandards.rst index 529464aa284..a90e94b450c 100644 --- a/docs/CodingStandards.rst +++ b/docs/CodingStandards.rst @@ -108,6 +108,7 @@ unlikely to be supported by our host compilers. * Lambdas: N2927_ * But *not* ``std::function``, until Clang implements `MSVC-compatible RTTI`_. + * And *not* lambdas with default arguments. * ``decltype``: N2343_ * Nested closing right angle brackets: N1757_ @@ -116,6 +117,11 @@ unlikely to be supported by our host compilers. * Strongly-typed and forward declarable enums: N2347_, N2764_ * Local and unnamed types as template arguments: N2657_ * Range-based for-loop: N2930_ + + * But ``{}`` are required around inner ``do {} while()`` loops. As a result, + ``{}`` are required around function-like macros inside range-based for + loops. + * ``override`` and ``final``: N2928_, N3206_, N3272_ * Atomic operations and the C++11 memory model: N2429_ -- 2.34.1