Skip to content

Commit 7b4b656

Browse files
authored
Clean up double and trailing spaces in "C++ Conformance improvements, behavior changes, and bug fixes in Visual Studio 2017"
1 parent 02dea38 commit 7b4b656

1 file changed

Lines changed: 6 additions & 6 deletions

File tree

docs/overview/cpp-conformance-improvements-2017.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -611,7 +611,7 @@ To fix the warning, put `extern "C"` first:
611611
extern "C" __declspec(noinline) HRESULT __stdcall
612612
```
613613
614-
This warning is off by default in Visual Studio 2017 version 15.3, and only impacts code compiled with **`/Wall`** **`/WX`**. Starting in Visual Studio 2017 version 15.5, it's enabled by default as a level 3 warning.
614+
This warning is off by default in Visual Studio 2017 version 15.3, and only impacts code compiled with **`/Wall`** **`/WX`**. Starting in Visual Studio 2017 version 15.5, it's enabled by default as a level 3 warning.
615615
616616
### `decltype` and calls to deleted destructors
617617
@@ -1022,7 +1022,7 @@ To fix the error, remove the unused variable.
10221022

10231023
### Single-line comments
10241024

1025-
In Visual Studio 2017 version 15.5, warnings C4001 and C4179 are no longer emitted by the C compiler. Previously, they were only emitted under the **`/Za`** compiler switch. The warnings are no longer needed because single-line comments have been part of the C standard since C99.
1025+
In Visual Studio 2017 version 15.5, warnings C4001 and C4179 are no longer emitted by the C compiler. Previously, they were only emitted under the **`/Za`** compiler switch. The warnings are no longer needed because single-line comments have been part of the C standard since C99.
10261026

10271027
```cpp
10281028
/* C only */
@@ -1116,7 +1116,7 @@ error C2027: use of undefined type 'S'
11161116

11171117
### `std::is_convertible` target type
11181118

1119-
`std::is_convertible` requires the target type to be a valid return type. In earlier versions of Visual Studio, the compiler incorrectly allowed abstract types, which might lead to incorrect overload resolution and unintended runtime behavior. The following code now correctly raises C2338:
1119+
`std::is_convertible` requires the target type to be a valid return type. In earlier versions of Visual Studio, the compiler incorrectly allowed abstract types, which might lead to incorrect overload resolution and unintended runtime behavior. The following code now correctly raises C2338:
11201120

11211121
```cpp
11221122
#include <type_traits>
@@ -1193,7 +1193,7 @@ The warning was added in Visual Studio 2017 version 15.3, but was off by default
11931193
11941194
### Defaulted functions and `__declspec(nothrow)`
11951195
1196-
The compiler previously allowed defaulted functions to be declared with `__declspec(nothrow)` when the corresponding base/member functions permitted exceptions. This behavior is contrary to the C++ standard and can cause undefined behavior at runtime. The standard requires such functions to be defined as deleted if there's an exception specification mismatch. Under **`/std:c++17`**, the following code raises C2280:
1196+
The compiler previously allowed defaulted functions to be declared with `__declspec(nothrow)` when the corresponding base/member functions permitted exceptions. This behavior is contrary to the C++ standard and can cause undefined behavior at runtime. The standard requires such functions to be defined as deleted if there's an exception specification mismatch. Under **`/std:c++17`**, the following code raises C2280:
11971197
11981198
```cpp
11991199
struct A {
@@ -1441,7 +1441,7 @@ void sample(A<0> *p)
14411441

14421442
### C++20: Avoiding unnecessary decay (partial)
14431443

1444-
[P0777R1](https://wg21.link/p0777r1) Adds differentiation between the concept of "decay" and that of simply removing const or reference qualifiers. New type trait `remove_reference_t` replaces `decay_t` in some contexts. Support for `remove_cvref_t` is implemented in Visual Studio 2019.
1444+
[P0777R1](https://wg21.link/p0777r1) Adds differentiation between the concept of "decay" and that of simply removing const or reference qualifiers. New type trait `remove_reference_t` replaces `decay_t` in some contexts. Support for `remove_cvref_t` is implemented in Visual Studio 2019.
14451445

14461446
### C++17: Parallel algorithms
14471447

@@ -1613,7 +1613,7 @@ In [`/permissive-`](../build/reference/permissive-standards-conformance.md) mode
16131613

16141614
```cpp
16151615
template <typename T>
1616-
using X = typename T; // C7511: 'T': 'typename' keyword must be
1616+
using X = typename T; // C7511: 'T': 'typename' keyword must be
16171617
// followed by a qualified name
16181618
```
16191619

0 commit comments

Comments
 (0)