Skip to content

Commit 6382bc4

Browse files
authored
Merge pull request #5519 from MicrosoftDocs/main
3/27/2024 AM Publish
2 parents 592254e + 5505d70 commit 6382bc4

17 files changed

+144
-146
lines changed

.openpublishing.redirection.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
{
22
"redirections": [
3+
{
4+
"source_path": "docs/windows/desktop-applications-visual-cpp.md",
5+
"redirect_url": "/cpp/windows/overview-of-windows-programming-in-cpp",
6+
"redirect_document_id": true
7+
},
38
{
49
"source_path": "docs/cpp-conformance-improvements-2017.md",
510
"redirect_url": "/cpp/overview/cpp-conformance-improvements",

docs/build/walkthrough-creating-and-using-a-static-library-cpp.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -290,5 +290,4 @@ The instructions for how to create the project vary depending on your version of
290290
291291
## See also
292292
293-
[Walkthrough: Creating and Using a Dynamic Link Library (C++)](../build/walkthrough-creating-and-using-a-dynamic-link-library-cpp.md)<br/>
294-
[Desktop Applications (Visual C++)](../windows/desktop-applications-visual-cpp.md)<br/>
293+
[Walkthrough: Creating and Using a Dynamic Link Library (C++)](../build/walkthrough-creating-and-using-a-dynamic-link-library-cpp.md)

docs/cpp/index.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
### YamlMime:Landing
2-
title: C++ language documentation
2+
title: C++ documentation
33
summary: Learn to use C++ and the C++ standard library.
44

55
metadata:
@@ -76,7 +76,7 @@ landingContent:
7676
url: ../build/reference/compiling-a-c-cpp-program.md
7777
- text: Linker reference
7878
url: ../build/reference/linking.md
79-
- text: Additional build tools
79+
- text: More build tools
8080
url: ../build/reference/c-cpp-build-tools.md
8181
- text: Errors and warnings
8282
url: ../error-messages/compiler-errors-1/c-cpp-build-errors.md

docs/error-messages/compiler-warnings/compiler-warning-level-3-c4334.md

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,9 @@ ms.assetid: d845857f-bc95-4faf-a079-626a0cf935ba
88
---
99
# Compiler Warning (level 3) C4334
1010

11-
'operator' : result of 32-bit shift implicitly converted to 64 bits (was 64-bit shift intended?)
11+
'operator': result of 32-bit shift implicitly converted to 64 bits (was 64-bit shift intended?)
1212

13-
The result of 32-bit shift was implicitly converted to 64-bits, and the compiler suspects that a 64-bit shift was intended. To resolve this warning, either use 64-bit shift, or explicitly cast the shift result to 64-bit.
13+
The result of 32-bit shift was converted to 64-bit, and the compiler suspects that a 64-bit shift was intended. Resolve this warning by using a 64-bit shift. If a 32-bit shift is intentional, then cast the shift result to 32-bit to make it clear to the compiler.
1414

1515
## Example
1616

@@ -20,7 +20,9 @@ The following sample generates C4334.
2020
// C4334.cpp
2121
// compile with: /W3 /c
2222
void SetBit(unsigned __int64 *p, int i) {
23-
*p |= (1 << i); // C4334
24-
*p |= (1i64 << i); // OK
23+
*p |= (1 << i); // C4334, 32-bit shift cast to 64-bit
24+
*p |= (1i64 << i); // OK, 64-bit shift
25+
*p |= static_cast<int>(1 << i); // OK, 32-bit shift saved to 64-bit result
26+
*p |= static_cast<__int64>(1) << i; // OK, 64-bit shift
2527
}
2628
```

docs/error-messages/compiler-warnings/compiler-warnings-c4400-through-c4599.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,8 @@ The articles in this section of the documentation explain a subset of the warnin
7878
|[Compiler warning (level 1, Error) C4462](../../error-messages/compiler-warnings/compiler-warning-level-1-c4462.md)|'*type*' : cannot determine the GUID of the type. Program may fail at runtime.|
7979
|[Compiler warning (level 4) C4463](compiler-warning-level-4-c4463.md)|overflow; assigning '*value*' to bit-field that can only hold values from '*min_value*' to '*max_value*'|
8080
|[Compiler warning (level 4) C4464](../../error-messages/compiler-warnings/compiler-warning-level-4-c4464.md)|relative include path contains '..'|
81+
|Compiler warning (level 1) C4467|Usage of ATL attributes is deprecated|
82+
|Compiler warning (level 1) C4468|The [[fallthrough]] attribute must be followed by a `case` label or a `default` label|
8183
|[Compiler warning (level 1) C4470](../../error-messages/compiler-warnings/compiler-warning-level-1-c4470.md)|floating-point control pragmas ignored under /clr|
8284
|[Compiler warning (level 4) C4471](compiler-warning-level-4-c4471.md)|'*enumeration*': a forward declaration of an unscoped enumeration must have an underlying type (int assumed)|
8385
|Compiler warning (level 1) C4472|'*identifier*' is a native enum: add an access specifier (private/public) to declare a 'WinRT\|managed' enum|
@@ -149,7 +151,7 @@ The articles in this section of the documentation explain a subset of the warnin
149151
|[Compiler warning (level 1) C4550](../../error-messages/compiler-warnings/compiler-warning-level-1-c4550.md)|expression evaluates to a function which is missing an argument list|
150152
|[Compiler warning (level 1) C4551](../../error-messages/compiler-warnings/compiler-warning-level-1-c4551.md)|function call missing argument list|
151153
|[Compiler warning (level 1) C4552](../../error-messages/compiler-warnings/compiler-warning-level-1-c4552.md)|'*operator*': operator has no effect; expected operator with side-effect|
152-
|[Compiler warning (level 1) C4553](../../error-messages/compiler-warnings/compiler-warning-level-1-c4553.md)|'*operator*': operator has no effect; did you intend 'operator?|
154+
|[Compiler warning (level 1) C4553](../../error-messages/compiler-warnings/compiler-warning-level-1-c4553.md)|'*operator*': operator has no effect; did you intend 'operator'?|
153155
|[Compiler warning (level 3) C4554](../../error-messages/compiler-warnings/compiler-warning-level-3-c4554.md) C4554|'*operator*': check operator precedence for possible error; use parentheses to clarify precedence|
154156
|[Compiler warning (level 1) C4555](../../error-messages/compiler-warnings/compiler-warning-level-1-c4555.md)|expression has no effect; expected expression with side-effect|
155157
|[Compiler warning (level 1) C4556](../../error-messages/compiler-warnings/compiler-warning-level-1-c4556.md)|value of intrinsic immediate argument '*value*' is out of range '*lower_bound* - *upper_bound*'|
@@ -181,6 +183,7 @@ The articles in this section of the documentation explain a subset of the warnin
181183
|Compiler warning (level 1, Error) C4586|'*type*': A public type cannot be declared in a top-level namespace called 'Windows'|
182184
|Compiler warning (level 1) C4587|'*anonymous_structure*': behavior change: constructor is no longer implicitly called|
183185
|Compiler warning (level 1) C4588|'*anonymous_structure*': behavior change: destructor is no longer implicitly called|
186+
|Compiler warning (level 4) C4589|Constructor of abstract class '*class1*' ignores initializer for virtual base class '*class2*'|
184187
|Compiler warning (level 1) C4591|'constexpr' call-depth limit of *number* exceeded (/constexpr:depth\<NUMBER>)|
185188
|Compiler warning (level 3) C4592|'*function*': 'constexpr' call evaluation failed; function will be called at run-time|
186189
|Compiler warning (level 1) C4593|'*function*': 'constexpr' call evaluation step limit of '*limit*' exceeded; use /constexpr:steps\<NUMBER> to increase the limit|

docs/error-messages/compiler-warnings/compiler-warnings-c4600-through-c4799.md

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,9 @@ The articles in this section of the documentation explain a subset of the warnin
5454
|[Compiler warning (level 4) C4639](../../error-messages/compiler-warnings/compiler-warning-level-4-c4639.md)|MSXML error, XML document comments will not be processed. Reason|
5555
|[Compiler warning (level 3) C4640](../../error-messages/compiler-warnings/compiler-warning-level-3-c4640.md)|'instance': construction of local static object is not thread-safe|
5656
|[Compiler warning (level 3) C4641](../../error-messages/compiler-warnings/compiler-warning-level-3-c4641.md)|XML document comment has an ambiguous cross reference:|
57+
|Compiler warning (level 1) C4642|'*class*': could not import the constraints for generic parameter '*name*'|
58+
|Compiler warning (level 4, off) C4643|Forward declaring '*identifier*' in namespace std is not permitted by the C++ Standard.|
59+
|Compiler warning (level 1) C4644|usage of the macro-based `offsetof` pattern in constant expressions is non-standard; use `offsetof` defined in the C++ standard library instead|
5760
|[Compiler warning (level 3) C4645](compiler-warning-level-3-c4645.md)|function declared with __declspec(noreturn) has a return statement|
5861
|[Compiler warning (level 3) C4646](compiler-warning-level-3-c4646.md)|function declared with __declspec(noreturn) has non-void return type|
5962
|Compiler warning (level 3) C4647|behavior change: __is_pod(*type*) has different value in previous versions|
@@ -93,7 +96,7 @@ The articles in this section of the documentation explain a subset of the warnin
9396
|[Compiler warning (Error) C4687](../../error-messages/compiler-warnings/compiler-warning-c4687.md)|'class': a sealed abstract class cannot implement an interface 'interface'|
9497
|[Compiler warning (level 1) C4688](../../error-messages/compiler-warnings/compiler-warning-level-1-c4688.md)|'constraint': constraint list contains assembly private type 'type'|
9598
|Compiler warning (level 1) C4689|'%c': unsupported character in #pragma detect_mismatch; #pragma ignored|
96-
|[Compiler warning (level 4) C4690](../../error-messages/compiler-warnings/compiler-warning-level-4-c4690.md)|\[ emitidl( pop ) ]: more pops than pushes|
99+
|[Compiler warning (level 4) C4690](../../error-messages/compiler-warnings/compiler-warning-level-4-c4690.md)|[ emitidl( pop ) ]: more pops than pushes|
97100
|[Compiler warning (level 1) C4691](../../error-messages/compiler-warnings/compiler-warning-level-1-c4691.md)|'type': type referenced was expected in unreferenced assembly 'file', type defined in current translation unit used instead|
98101
|[Compiler warning (level 1) C4692](../../error-messages/compiler-warnings/compiler-warning-level-1-c4692.md)|'function': signature of non-private member contains assembly private native type 'native_type'|
99102
|[Compiler warning (level 1, Error) C4693](../../error-messages/compiler-warnings/compiler-warning-c4693.md)|'class': a sealed abstract class cannot have any instance members 'instance member'|
@@ -124,10 +127,12 @@ The articles in this section of the documentation explain a subset of the warnin
124127
|[Compiler warning (level 1) C4727](../../error-messages/compiler-warnings/compiler-warning-level-1-c4727.md)|PCH named pch_file with same timestamp found in obj_file_1 and obj_file_2. Using first PCH.|
125128
|Compiler warning (level 1) C4728|/Yl- option ignored because PCH reference is required|
126129
|Compiler warning (level 4) C4729|function too big for flow graph based warnings|
127-
|[Compiler warning (Level 1) C4730](../../error-messages/compiler-warnings/compiler-warning-level-1-c4730.md)Compiler warning (level 1) C4730|'main': mixing _m64 and floating point expressions may result in incorrect code|
130+
|[Compiler warning (Level 1) C4730](../../error-messages/compiler-warnings/compiler-warning-level-1-c4730.md)|'main': mixing _m64 and floating point expressions may result in incorrect code|
128131
|[Compiler warning (Level 1) C4731](../../error-messages/compiler-warnings/compiler-warning-level-1-c4731.md)|'pointer': frame pointer register 'register' modified by inline assembly code|
129132
|Compiler warning (level 1) C4732|intrinsic '%s' is not supported in this architecture|
130133
|[Compiler warning (Level 1) C4733](../../error-messages/compiler-warnings/compiler-warning-level-1-c4733.md)|Inline asm assigning to 'FS:0': handler not registered as safe handler|
134+
|Compiler warning C4735|`align_function` attribute argument '*argument*' is not a power of two and is not positive. Ignoring attribute|
135+
|Compiler warning C4736|`align_function` attribute ignored because `/Gy` was not specified|
131136
|[Compiler warning (Level 3) C4738](../../error-messages/compiler-warnings/compiler-warning-level-3-c4738.md)|storing 32-bit float result in memory, possible loss of performance|
132137
|[Compiler warning (level 1) C4739](compiler-warning-level-1-c4739.md)|reference to variable 'var' exceeds its storage space|
133138
|[Compiler warning (Level 4) C4740](../../error-messages/compiler-warnings/compiler-warning-level-4-c4740.md)|flow in or out of inline asm code suppresses global optimization|
@@ -140,6 +145,7 @@ The articles in this section of the documentation explain a subset of the warnin
140145
|[Compiler warning (level 1) C4750](compiler-warning-level-1-c4750.md)|'identifier': function with _alloca() inlined into a loop|
141146
|Compiler warning (level 4) C4751|/arch:AVX does not apply to Intel(R) Streaming SIMD Extensions that are within inline ASM|
142147
|Compiler warning (level 4) C4752|found Intel(R) Advanced Vector Extensions; consider using /arch:AVX|
148+
|Compiler warning C4753|Cannot find bounds for pointer; MPX intrinsic function ignored|
143149
|[Compiler warning (level 4) C4754](compiler-warning-level-4-c4754.md)|Conversion rules for arithmetic operations in the comparison at %s(%d) mean that one branch cannot be executed. Cast '%s' to '%s' (or similar type of %d bytes).|
144150
|Compiler warning C4755|Conversion rules for arithmetic operations in the comparison at %s(%d) mean that one branch cannot be executed in an inlined function. Cast '%s' to '%s' (or similar type of %d bytes).|
145151
|[Compiler warning (level 2) C4756](../../error-messages/compiler-warnings/compiler-warning-level-2-c4756.md)|overflow in constant arithmetic|
@@ -165,4 +171,4 @@ The articles in this section of the documentation explain a subset of the warnin
165171
## See also
166172

167173
[C/C++ Compiler and build tools errors and warnings](../compiler-errors-1/c-cpp-build-errors.md) \
168-
[Compiler warnings C4000 - C5999](compiler-warnings-c4000-c5999.md)
174+
[Compiler warnings C4000 - C5999](compiler-warnings-c4000-c5999.md)

docs/index.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -164,7 +164,7 @@ additionalContent:
164164
- text: Universal Windows Platform development
165165
url: cppcx/universal-windows-apps-cpp.md
166166
- text: Windows Desktop development
167-
url: ./windows/desktop-applications-visual-cpp.md
167+
url: windows/overview-of-windows-programming-in-cpp.md
168168
- text: Linux development
169169
url: linux/index.yml
170170
- text: Embedded development

docs/overview/overview-of-cpp-development.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -66,9 +66,9 @@ If your program has a user interface, you can use a designer to quickly populate
6666

6767
![Screenshot of the Designer and Toolbox windows.](media/vs2017-toolbox-designer.png "Visual Studio 2017 Toolbox and designer")
6868

69-
For more information about designing a user interface for a Universal Windows Platform app, see [Design and UI](https://developer.microsoft.com/windows/design).
70-
71-
For more information about creating a user interface for an MFC application, see [MFC Desktop Applications](../mfc/mfc-desktop-applications.md). For information about Win32 Windows programs, see [Windows Desktop Applications](../windows/desktop-applications-visual-cpp.md).
69+
- For more information about designing a user interface for a Universal Windows Platform app, see [Design and UI](https://developer.microsoft.com/windows/design).
70+
- For more information about creating a user interface for an MFC application, see [MFC Desktop Applications](../mfc/mfc-desktop-applications.md).
71+
- For information about Win32 Windows programs, see [Windows C++ desktop application types](../windows/overview-of-windows-programming-in-cpp.md).
7272

7373
## Write code
7474

docs/overview/toc.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ items:
22
- name: Microsoft C/C++ in Visual Studio
33
expanded: false
44
items:
5-
- name: C++ in Visual Studio
5+
- name: C and C++ in Visual Studio
66
href: ../overview/visual-cpp-in-visual-studio.md
77
- name: Overview of C++ development in Visual Studio
88
href: ../overview/overview-of-cpp-development.md

docs/overview/visual-cpp-in-visual-studio.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ Create unit tests using the Microsoft Unit Testing Framework for C++, Google Tes
121121

122122
## Write C/C++ applications using Visual Studio
123123

124-
[Desktop applications (C++)](../windows/desktop-applications-visual-cpp.md)\
124+
[Windows C++ desktop application types](../windows/overview-of-windows-programming-in-cpp.md)\
125125
Learn how to create traditional native C++ desktop applications for Windows.
126126

127127
[.NET programming with C++/CLI](../dotnet/dotnet-programming-with-cpp-cli-visual-cpp.md)\

0 commit comments

Comments
 (0)