title | description | ms.date | f1_keywords | helpviewer_keywords | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Microsoft C/C++ compiler (MSVC) warnings C4600 through C4799 |
Table of Microsoft C/C++ compiler (MSVC) warnings C4600 through C4799 |
05/03/2021 |
|
|
The articles in this section describe Microsoft C/C++ compiler warning messages C4600 through C4799.
[!INCLUDEerror-boilerplate]
Warning | Message |
---|---|
Compiler warning (level 1) C4600 | #pragma 'macro name': expected a valid non-empty string |
Compiler warning (level 1) C4602 | #pragma pop_macro: 'macro name' no previous #pragma push_macro for this identifier |
Compiler warning (level 1) C4603 | 'identifier': macro is not defined or definition is different after precompiled header use |
Compiler warning (level 1) C4604 | 'type': passing an argument of this type by value across the native/managed boundary requires the type to be move- or copy-constructible. Otherwise, the runtime behavior is undefined |
Compiler warning (level 1, off) C4605 | '/D macro' specified on current command line, but was not specified when precompiled header was built |
Compiler warning (level 1) C4606 | #pragma warning: 'warning number' ignored; Code Analysis warnings are not associated with warning levels |
Compiler warning (level 3, off) C4608 | Initializing multiple members of union: 'member1' and 'member2' |
Compiler warning (level 3, error) C4609 | 'type1' derives from default interface 'interface' on type 'type2'. Use a different default interface for 'type1', or break the base/derived relationship. |
Compiler warning (level 4) C4610 | class 'name' can never be instantiated - user defined constructor required |
Compiler warning (level 4) C4611 | interaction between 'function' and C++ object destruction is non-portable |
Compiler warning (level 1) C4612 | error in include filename |
Compiler warning (level 1) C4613 | 'symbol': class of segment cannot be changed |
Compiler warning (level 1) C4615 | #pragma warning : unknown user warning type |
Compiler warning (level 1) C4616 | #pragma warning : warning number 'number' not a valid compiler warning |
Compiler warning (level 1) C4618 | pragma parameters included an empty string; pragma ignored |
Compiler warning (level 3, off) C4619 | #pragma warning : there is no warning number 'number' |
Compiler warning (level 1) C4620 | no postfix form of 'operator ++ ' found for type 'type', using prefix form |
Compiler warning (level 1) C4621 | no postfix form of 'operator -- ' found for type 'type', using prefix form |
Compiler warning (level 3) C4622 | overwriting debug information formed during creation of the precompiled header in object file: 'file' |
Compiler warning (level 1 and level 4, off) C4623 | 'derived class': default constructor was implicitly defined as deleted |
Compiler warning (level 1 and level 4) C4624 | 'derived class': destructor was implicitly defined as deleted |
Compiler warning (level 1 and level 4, off) C4625 | 'derived class': copy constructor was implicitly defined as deleted |
Compiler warning (level 1 and level 4, off) C4626 | 'derived class': assignment operator was implicitly defined as deleted |
Compiler warning (level 1, no longer emitted) C4627 | 'identifier ': skipped when looking for precompiled header use |
Compiler warning (level 1, off) C4628 | digraphs not supported with -Ze . Character sequence 'digraph' not interpreted as alternate token for 'token' |
Compiler warning (level 4, no longer emitted) C4629 | digraph used, character sequence 'digraph' interpreted as token 'char' (insert a space between the two characters if this is not what you intended) |
Compiler warning (level 1) C4630 | 'symbol': 'extern' storage-class specifier illegal on member definition |
Compiler warning (level 2) C4631 | MSXML or XPath unavailable, XML document comments will not be processed. reason |
Compiler warning (level 1) C4632 | XML document comment: file - access denied: reason |
Compiler warning (level 3 and level 4) C4633 | XML document comment target: error: reason |
Compiler warning (level 4) C4634 | XML document comment target: cannot be applied: reason |
Compiler warning (level 3 and level 4) C4635 | XML document comment target: badly-formed XML: reason |
Compiler warning (level 3) C4636 | XML document comment target: tag requires non-empty 'attribute' attribute. |
Compiler warning (level 3 and level 4) C4637 | XML document comment target: <include> tag discarded. Reason |
Compiler warning (level 3) C4638 | XML document comment target: reference to unknown symbol 'symbol'. |
Compiler warning (level 2) C4639 | MSXML error, XML document comments will not be processed. Reason |
Compiler warning (level 3, off) C4640 | 'instance': construction of local static object is not thread-safe |
Compiler warning (level 3) C4641 | XML document comment has an ambiguous cross reference: |
Compiler warning (level 1) C4642 | 'class': could not import the constraints for generic parameter 'name' |
Compiler warning (level 4, off) C4643 | Forward declaring 'identifier' in namespace std is not permitted by the C++ Standard. |
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 |
Compiler warning (level 3) C4645 | function declared with 'noreturn ' has a return statement |
Compiler warning (level 3) C4646 | function declared with 'noreturn ' has non-void return type |
Compiler warning (level 3, off) C4647 | behavior change: __is_pod( type) has different value in previous versions |
Compiler warning (level 3) C4648 | standard attribute [[ attribute]] is ignored |
Compiler warning (level 3) C4649 | attributes are ignored in this context |
Compiler warning (level 1) C4650 | debugging information not in precompiled header; only global symbols from the header will be available |
Compiler warning (level 1) C4651 | '/D definition' specified for precompiled header but not for current compile |
Compiler warning (level 1) C4652 | compiler option 'option' inconsistent with precompiled header; current command-line option will override that defined in the precompiled header |
Compiler warning (level 1) C4653 | compiler option 'option' inconsistent with precompiled header; current command-line option ignored |
Compiler warning (level 4, off) C4654 | Code placed before include of precompiled header line will be ignored. Add code to precompiled header. |
Compiler warning (level 1) C4655 | 'symbol': variable type is new since the latest build, or is defined differently elsewhere |
Compiler warning (level 1) C4656 | 'symbol': data type is new or has changed since the latest build, or is defined differently elsewhere |
Compiler warning (level 1) C4657 | expression involves a data type that is new since the latest build |
Compiler warning (level 1) C4658 | 'function': function prototype is new since the latest build, or is declared differently elsewhere |
Compiler warning (level 1) C4659 | #pragma 'pragma': use of reserved segment 'segment' has undefined behavior, use #pragma comment(linker, ...) |
Compiler warning (level 1) C4661 | 'identifier': no suitable definition provided for explicit template instantiation request |
Compiler warning (level 1) C4662 | explicit instantiation; template-class 'identifier1' has no definition from which to specialize 'identifier2' |
Compiler warning (level 1) C4667 | 'function': cannot find a function template that matches the explicit instantiation |
Compiler warning (level 4, off) C4668 | 'symbol' is not defined as a preprocessor macro, replacing with '0 ' for 'directive' |
Compiler warning (level 1) C4669 | 'cast': unsafe conversion: 'class' is a managed/WinRT type object |
Compiler warning (level 4) C4670 | 'identifier': this base class is inaccessible |
Compiler warning (level 4) C4671 | 'identifier': the copy constructor is inaccessible |
Compiler warning (level 4) C4672 | 'identifier1': ambiguous. First seen as 'identifier2' |
Compiler warning (level 4) C4673 | throwing 'identifier' the following types will not be considered at the catch site |
Compiler warning (level 1) C4674 | 'method' should be declared 'static ' and have exactly one parameter |
Compiler warning (level 4) C4676 | 'class': the destructor is inaccessible |
Compiler warning (level 1) C4677 | 'function': signature of non-private member contains assembly private type 'private_type' |
Compiler warning (level 1) C4678 | base class 'base_type' is less accessible than 'derived_type' |
Compiler warning (level 1 and level 4) C4679 | 'member': could not import item or its associated custom attribute |
Compiler warning (level 4) C4680 | 'class': coclass does not specify a default interface |
Compiler warning (level 4) C4681 | 'class': coclass does not specify a default interface that is an event source |
Compiler warning (level 4, off) C4682 | 'parameter': no directional parameter attribute specified, defaulting to [in] |
Compiler warning (level 1) C4683 | 'function': event source has an 'out'-parameter; exercise caution when hooking multiple event handlers |
Compiler warning (level 1) C4684 | 'attribute': WARNING!! attribute may cause invalid code generation: use with caution |
Compiler warning (level 1, no longer emitted) C4685 | expecting '> > ' found '>> ' when parsing template parameters |
Compiler warning (level 3, off) C4686 | 'user-defined type': possible change in behavior, change in UDT return calling convention |
Compiler warning (level 1, error) C4687 | 'class': a sealed abstract class cannot implement an interface 'interface' |
Compiler warning (level 1) C4688 | 'constraint': constraint list contains assembly private type 'type' |
Compiler warning (level 1) C4689 | 'character': unsupported character in #pragma detect_mismatch ; #pragma ignored |
Compiler warning (level 4) C4690 | [ emitidl( pop ) ] : more pops than pushes |
Compiler warning (level 1) C4691 | 'type': type referenced was expected in unreferenced assembly 'file', type defined in current translation unit used instead |
Compiler warning (level 1, off) C4692 | 'function': signature of non-private member contains assembly private native type 'native_type' |
Compiler warning (level 1, error) C4693 | 'class': a sealed abstract class cannot have any instance members 'instance member' |
Compiler warning (level 1, error) C4694 | 'class': a sealed abstract class cannot have a base-class 'base_class' |
Compiler warning (level 1) C4695 | #pragma execution_character_set : 'character set' is not a supported argument: currently only 'UTF-8 ' is supported |
Compiler warning (level 1) C4696 | /ZBvalue1 option out of range; assuming 'value2' |
Compiler warning (level 3) C4698 | 'feature' is for evaluation purposes only and is subject to change or removal in future updates. |
Compiler warning (level 1 and level 4) C4700 | uninitialized local variable 'name' used |
Compiler warning (level 4) C4701 | potentially uninitialized local variable 'name' used |
Compiler warning (level 4) C4702 | unreachable code |
Compiler warning (level 4) C4703 | potentially uninitialized local pointer variable 'identifier' used |
Compiler warning (level 4) C4706 | assignment used as a condition |
Compiler warning (level 4) C4709 | comma operator within array index expression |
Compiler warning (level 4, off) C4710 | 'function': function not inlined |
Compiler warning (level 1) C4711 | function 'function' selected for automatic inline expansion |
Compiler warning (level 4) C4714 | function 'function' marked as __forceinline not inlined |
Compiler warning (level 1) C4715 | 'function': not all control paths return a value |
Compiler warning (level 1, error) C4716 | 'function': must return a value |
Compiler warning (level 1) C4717 | 'function': recursive on all control paths, function will cause runtime stack overflow |
Compiler warning (level 4) C4718 | 'function call': recursive call has no side effects, deleting |
Compiler warning (level 1) C4719 | Double constant found when Qfast specified - use 'f' as a suffix to indicate single precision |
Compiler warning (level 2) C4720 | in-line assembler reports: 'message' |
Compiler warning (level 1) C4721 | 'function': not available as an intrinsic |
Compiler warning (level 1) C4722 | 'function': destructor never returns, potential memory leak |
Compiler warning (level 3) C4723 | potential divide by 0 |
Compiler warning (level 3) C4724 | potential mod by 0 |
Compiler warning (level 3) C4725 | instruction may be inaccurate on some Pentiums |
Compiler warning C4726 | ARM arch4/4T supports only '<cpsr_f> or <spsr_f> ' with immediate value |
Compiler warning (level 1) C4727 | PCH named pch_file with same timestamp found in obj_file_1 and obj_file_2. Using first PCH. |
Compiler warning (level 1) C4728 | /Yl- option ignored because PCH reference is required |
Compiler warning (level 4) C4729 | function too big for flow graph based warnings |
Compiler warning (Level 1) C4730 | 'main': mixing _m64 and floating point expressions may result in incorrect code |
Compiler warning (Level 1) C4731 | 'pointer': frame pointer register 'register' modified by inline assembly code |
Compiler warning (level 1) C4732 | intrinsic 'identifier' is not supported in this architecture |
Compiler warning (Level 1) C4733 | Inline asm assigning to 'FS:0 ': handler not registered as safe handler |
Compiler warning C4734 | More than 64k line numbers in a COFF debug info section; stop emitting COFF debug line numbers for module 'module' |
Compiler warning C4735 | align_function attribute argument 'argument' is not a power of two and is not positive. Ignoring attribute |
Compiler warning C4736 | align_function attribute ignored because /Gy was not specified |
Compiler warning (Level 3) C4738 | storing 32-bit float result in memory, possible loss of performance |
Compiler warning (level 1) C4739 | reference to variable 'var' exceeds its storage space |
Compiler warning (Level 4) C4740 | flow in or out of inline asm code suppresses global optimization |
Compiler warning (Level 1) C4742 | 'var' has different alignment in 'file1' and 'file2': number and number |
Compiler warning (Level 1) C4743 | 'type' has different size in 'file1' and 'file2': number and number bytes |
Compiler warning (Level 1) C4744 | 'var' has different type in 'file1' and 'file2': 'type1' and 'type2' |
Compiler warning C4745 | volatile access of 'name' cannot be honored due to its size |
Compiler warning C4746 | volatile access of 'expression' is subject to `/volatile:<iso |
Compiler warning (level 1) C4747 | Calling managed 'entrypoint': Managed code may not be run under loader lock, including the DLL entrypoint and calls reached from the DLL entrypoint |
Compiler warning (level 4, off) C4749 | conditionally supported: message |
Compiler warning (level 1) C4750 | 'identifier': function with _alloca() inlined into a loop |
Compiler warning (level 4) C4751 | /arch:AVX does not apply to Intel(R) Streaming SIMD Extensions that are within inline ASM |
Compiler warning (level 4) C4752 | found Intel(R) Advanced Vector Extensions; consider using /arch:AVX |
Compiler warning C4753 | Cannot find bounds for pointer; MPX intrinsic function ignored |
Compiler warning (level 4) C4754 | 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). |
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). |
Compiler warning (level 2) C4756 | overflow in constant arithmetic |
Compiler warning (level 4) C4757 | subscript is a large unsigned value, did you intend a negative constant? |
Compiler warning C4761 | integral size mismatch in argument; conversion supplied |
Compiler warning (level 4) C4764 | Can not align catch objects to greater than 16 bytes |
Compiler warning (level 4, off) C4767 | section name '%s' is longer than 8 characters and will be truncated by the linker |
Compiler warning (level 3, off) C4768 | __declspec attributes before linkage specification are ignored |
Compiler warning (level 4) C4770 | partially validated enum 'name' used as index |
Compiler warning C4771 | Bounds must be created using a simple pointer; MPX intrinsic function ignored |
Compiler warning (level 1, error) C4772 | #import referenced a type from a missing type library; 'missing_type' used as a placeholder |
Compiler warning (level 4, off) C4774 | 'string' : format string expected in argument number is not a string literal |
Compiler warning (level 3) C4775 | nonstandard extension used in format string 'string' of function 'function' |
Compiler warning (level 1) C4776 | '% character' is not allowed in the format string of function 'function' |
Compiler warning (level 4, off) C4777 | 'function' : format string 'string' requires an argument of type 'type1', but variadic argument number has type 'type2' |
Compiler warning (level 3) C4778 | 'function' : unterminated format string 'string' |
Compiler warning (Level 1) C4788 | 'identifier': identifier was truncated to 'number' characters |
Compiler warning (Level 1) C4789 | buffer 'identifier' of size N bytes will be overrun; M bytes will be written starting at offset L |
Compiler warning (level 2) C4792 | function '%s' declared using sysimport and referenced from native code; import library required to link |
Compiler warning (level 1 and level 3) C4793 | 'function': function compiled as native: reason |
Compiler warning (level 1) C4794 | segment of thread local storage variable '%s' changed from '%s' to '%s' |
Compiler warning C4798 | native code generated for p-code function 'name' with exception handler or unwind semantics |
Compiler warning (level 1) C4799 | function 'function' has no EMMS instruction |
C/C++ Compiler and build tools errors and warnings
Compiler warnings C4000 - C5999