description | title | ms.date | f1_keywords | ms.assetid | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Learn more about: Compiler warnings C4000 Through C4199 |
Compiler warnings C4000 Through C4199 |
04/21/2019 |
|
426f495a-43af-4906-ad2b-6e5822c09965 |
The articles in this section of the documentation explain a subset of the warning messages that are generated by the compiler.
[!INCLUDEerror-boilerplate]
Warning | Message |
---|---|
Compiler warning C4000 | UNKNOWN WARNING Please choose the Technical Support command on the Visual C++ Help menu, or open the Technical Support help file for more information |
Compiler warning (level 4) C4001 | nonstandard extension 'single line comment' was used |
Compiler warning (level 1) C4002 | too many actual parameters for macro 'identifier' |
Compiler warning (level 1) C4003 | not enough actual parameters for macro 'identifier' |
Compiler warning (level 1) C4005 | 'identifier': macro redefinition |
Compiler warning (level 1) C4006 | #undef expected an identifier |
Compiler warning (level 2) C4007 | 'function': must be 'attribute' |
Compiler warning (level 3) C4008 | 'function': 'attribute' attribute ignored |
Compiler warning (level 1) C4010 | single-line comment contains line-continuation character |
Compiler warning (level 3) C4013 | 'function' undefined; assuming extern returning int |
Compiler warning (level 1) C4015 | 'identifer': type of bit field must be integral |
Compiler warning (level 3) C4018 | 'expression': signed/unsigned mismatch |
Compiler warning (level 4) C4019 | empty statement at global scope |
Compiler warning (level 1) C4020 | 'function': too many actual parameters |
Compiler warning (level 1) C4022 | 'function': pointer mismatch for actual parameter 'parameter number' |
Compiler warning (level 1) C4023 | 'function': based pointer passed to unprototyped function: parameter 'parameter_number' |
Compiler warning (level 1) C4024 | 'function': different types for formal and actual parameter 'parameter_number' |
Compiler warning (level 1) C4025 | 'function': based pointer passed to function with variable arguments: parameter 'parameter_number' |
Compiler warning (level 1) C4026 | function declared with formal parameter list |
Compiler warning (level 1) C4027 | function declared without formal parameter list |
Compiler warning (level 1) C4028 | formal parameter 'parameter_number' different from declaration |
Compiler warning (level 1) C4029 | declared formal parameter list different from definition |
Compiler warning (level 1) C4030 | first formal parameter list longer than the second list |
Compiler warning (level 1) C4031 | second formal parameter list longer than the first list |
Compiler warning (level 4) C4032 | formal parameter 'parameter_number' has different type when promoted |
Compiler warning (level 1) C4033 | 'function' must return a value |
Compiler warning (level 1) C4034 | sizeof returns 0 |
Compiler warning (level 3) C4035 | 'function': no return value |
Compiler warning (level 1) C4036 | unnamed 'type' as actual parameter |
Compiler warning (level 1) C4038 | 'modifier': illegal class modifier |
Compiler warning (level 1) C4041 | compiler limit: terminating browser output |
Compiler warning (level 1) C4042 | 'identifier': has bad storage class |
Compiler warning (level 1) C4045 | 'array': array bounds overflow |
Compiler warning (level 1) C4047 | 'operator': 'identifier1' differs in levels of indirection from 'identifier2' |
Compiler warning (level 1) C4048 | different array subscripts: 'identifier1' and 'identifier2' |
Compiler warning (level 1) C4049 | compiler limit: terminating line number emission |
Compiler warning (level 1) C4051 | type conversion; possible loss of data |
Compiler warning (level 4) C4052 | function declarations different; one contains variable arguments |
Compiler warning (level 4) C4053 | one void operand for '?:' |
Compiler warning (level 1) C4055 | 'conversion' : from data pointer 'type1' to function pointer 'type2' |
Compiler warning (level 2) C4056 | overflow in floating-point constant arithmetic |
Compiler warning (level 4) C4057 | 'operator': 'identifier1' differs in indirection to slightly different base types from 'identifier2' |
Compiler warning C4060 | switch statement contains no 'case' or 'default' labels |
Compiler warning (level 4) C4061 | enumerator 'identifier' in switch of enum 'enumeration' is not explicitly handled by a case label |
Compiler warning (level 4) C4062 | enumerator 'identifier' in switch of enum 'enumeration' is not handled |
Compiler warning C4063 | case 'identifier' is not a valid value for switch of enum 'enumeration' |
Compiler warning C4064 | switch of incomplete enum 'enumeration' |
Compiler warning C4065 | switch statement contains 'default' but no 'case' labels |
Compiler warning (level 3) C4066 | characters beyond first in wide-character constant ignored |
Compiler warning (level 1) C4067 | unexpected tokens following preprocessor directive - expected a newline |
Compiler warning (level 1) C4068 | unknown pragma |
Compiler warning C4069 | long double is the same precision as double |
Compiler warning (level 3) C4073 | initializers put in library initialization area |
Compiler warning (level 1) C4074 | initializers put in compiler reserved initialization area |
Compiler warning (level 1) C4075 | initializers put in unrecognized initialization area |
Compiler warning (level 1) C4076 | 'type_modifier': can not be used with type 'typename' |
Compiler warning (level 1) C4077 | unknown check_stack option |
Compiler warning (level 1) C4079 | unexpected token 'token' |
Compiler warning (level 1) C4080 | expected identifier for segment name; found 'symbol' |
Compiler warning (level 1) C4081 | expected 'token1'; found 'token2' |
Compiler warning (level 1) C4083 | expected 'token'; found identifier 'identifier' |
Compiler warning (level 1) C4085 | expected pragma parameter to be 'on' or 'off' |
Compiler warning (level 1) C4086 | expected pragma parameter to be '1', '2', '4', '8', or '16' |
Compiler warning (level 1) C4087 | 'function': declared with 'void' parameter list |
Compiler warning (level 1) C4088 | 'function': pointer mismatch in actual parameter 'parameter_number', formal parameter 'parameter_number' |
Compiler warning (level 1) C4089 | 'function': different types in actual parameter 'parameter_number', formal parameter 'parameter_number' |
Compiler warning (level 1) C4090 | 'operation': different 'modifier' qualifiers |
Compiler warning (level 1) C4091 | keyword': ignored on left of 'type' when no variable is declared |
Compiler warning (level 4) C4092 | sizeof returns 'unsigned long' |
Compiler warning (level 2) C4094 | untagged 'token' declared no symbols |
Compiler warning (level 1) C4096 | 'identifier': interface is not a COM interface; will not be emitted to IDL |
Compiler warning (level 1) C4097 | expected pragma parameter to be 'restore' or 'off' |
Compiler warning (level 1) C4098 | 'function': 'void' function returning a value |
Compiler warning (level 2) C4099 | 'identifier': type name first seen using 'object_type1' now seen using 'object_type2' |
Compiler warning (level 4) C4100 | 'identifier': unreferenced formal parameter |
Compiler warning (level 3) C4101 | 'identifier': unreferenced local variable |
Compiler warning (level 3) C4102 | 'label': unreferenced label |
Compiler warning (level 1) C4103 | 'filename': alignment changed after including header, may be due to missing #pragma pack(pop) |
Compiler warning (level 1) C4109 | unexpected identifier 'identifier' |
Compiler warning (level 1) C4112 | #line requires an integer between 1 and 'line_count' |
Compiler warning (level 1) C4113 | 'identifier1' differs in parameter lists from 'identifier2' |
Compiler warning (level 1) C4114 | same type qualifier used more than once |
Compiler warning (level 1 and level 4) C4115 | 'type': named type definition in parentheses |
Compiler warning (level 1) C4116 | unnamed type definition in parentheses |
Compiler warning (level 1) C4117 | macro name 'name' is reserved, 'command' ignored |
Compiler warning (level 1) C4119 | different bases 'base1' and 'base2' specified |
Compiler warning (level 1) C4120 | based/unbased mismatch |
Compiler warning (level 4) C4121 | 'symbol': alignment of a member was sensitive to packing |
Compiler warning (level 1) C4122 | 'function': alloc_text applicable only to functions with C linkage |
Compiler warning (level 1) C4123 | different base expressions specified |
Compiler warning (level 1) C4124 | __fastcall with stack checking is inefficient |
Compiler warning (level 4) C4125 | decimal digit terminates octal escape sequence |
Compiler warning (level 4) C4127 | conditional expression is constant |
Compiler warning (level 1) C4129 | 'character': unrecognized character escape sequence |
Compiler warning (level 4) C4130 | 'operator': logical operation on address of string constant |
Compiler warning (level 4) C4131 | 'function': uses old-style declarator |
Compiler warning (level 4) C4132 | 'object': const object should be initialized |
Compiler warning (level 3) C4133 | 'expression': incompatible types - from 'type1' to 'type2' |
Compiler warning C4137 | 'function': no return value from floating-point function |
Compiler warning (level 1) C4138 | '*/' found outside of comment |
Compiler warning (level 1) C4141 | 'modifier': used more than once |
Compiler warning (level 1) C4142 | benign redefinition of type |
Compiler warning (level 1) C4143 | pragma 'same_seg' not supported; use __based allocation |
Compiler warning (level 1) C4144 | 'expression': relational expression as switch expression |
Compiler warning (level 1) C4145 | 'expression1': relational expression as switch expression; possible confusion with 'expression2' |
Compiler warning (level 2) C4146 | unary minus operator applied to unsigned type, result still unsigned |
Compiler warning (level 2) C4150 | deletion of pointer to incomplete type 'type'; no destructor called |
Compiler warning (level 4) C4152 | nonstandard extension, function/data pointer conversion in expression |
Compiler warning (level 1) C4153 | function/data pointer conversion in expression |
Compiler warning (level 1) C4154 | deletion of an array expression; conversion to pointer supplied |
Compiler warning (level 1) C4155 | deletion of an array expression without using the array form of 'delete' |
Compiler warning (level 2) C4156 | deletion of an array expression without using the array form of 'delete'; array form substituted |
Compiler warning (level 1) C4157 | pragma was ignored by C compiler |
Compiler warning (level 1) C4158 | assuming #pragma pointers_to_members(full_generality, 'inheritance_type') |
Compiler warning (level 3) C4159 | #pragma 'pragma'(pop,...): has popped previously pushed identifier 'identifier' |
Compiler warning (level 1) C4160 | #pragma 'pragma'(pop,...): did not find previously pushed identifier 'identifier' |
Compiler warning (level 3) C4161 | #pragma 'pragma'(pop...): more pops than pushes |
Compiler warning (level 1) C4162 | 'identifier': no function with C linkage found |
Compiler warning (level 1) C4163 | 'identifier': not available as an intrinsic function |
Compiler warning (level 1) C4164 | 'function': intrinsic function not declared |
Compiler warning (level 1) C4165 | 'HRESULT' is being converted to 'bool'; are you sure this is what you want? |
Compiler warning (level 1) C4166 | illegal calling convention for constructor/destructor |
Compiler warning (level 1) C4167 | 'function': only available as an intrinsic function |
Compiler warning (level 1) C4168 | compiler limit: out of debugger types, delete program database 'database' and rebuild |
Compiler warning (level 1) C4172 | returning address of local variable or temporary |
Compiler warning (level 1) C4174 | 'name': not available as a #pragma component |
Compiler warning (level 1) C4175 | #pragma component(browser, on): browser info must initially be specified on the command line |
Compiler warning (level 1) C4176 | 'subcomponent': unknown subcomponent for #pragma component browser |
Compiler warning (level 1) C4177 | #pragma 'pragma' should only be used at global scope or namespace scope |
Compiler warning (level 1) C4178 | case constant 'constant' too big for the type of the switch expression |
Compiler warning (level 4) C4179 | '//*': parsed as '/' and '/*': confusion with standard '//' comments |
Compiler warning (level 1) C4180 | qualifier applied to function type has no meaning; ignored |
Compiler warning C4181 | qualifier applied to reference type; ignored |
Compiler warning (level 1) C4182 | #include nesting level is 'nest_count' deep; possible infinite recursion |
Compiler warning (level 1) C4183 | 'identifier': missing return type; assumed to be a member function returning 'int' |
Compiler warning (level 1) C4185 | ignoring unknown #import attribute 'attribute' |
Compiler warning (level 1) C4186 | #import attribute 'attribute' requires 'argument_count' arguments; ignored |
Compiler warning (level 1) C4187 | #import attributes 'attribute1' and 'attribute2' are incompatible; both ignored |
Compiler warning (level 1) C4188 | constant expression is not integral |
Compiler warning (level 4) C4189 | 'identifier': local variable is initialized but not referenced |
Compiler warning (level 1) C4190 | 'identifier1' has C-linkage specified, but returns UDT 'identifier2' which is incompatible with C |
Compiler warning (level 3) C4191 | 'operator/operation': unsafe conversion from 'type_of_expression' to 'type_required'\nCalling this function through the result pointer may cause your program to fail |
Compiler warning (level 3) C4192 | automatically excluding 'identifier' while importing type library 'library' |
Compiler warning (level 3) C4193 | #pragma warning(pop): no matching '#pragma warning(push)' |
Compiler warning (level 1) C4194 | #pragma start_map_region cannot be nested; ignored |
Compiler warning (level 1) C4195 | #pragma stop_map_region used without matching #pragma start_map_region; ignored |
Compiler warning (level 1) C4196 | expected '%$L' or '%$L'; found '%$L' |
Compiler warning (level 3) C4197 | 'type': top-level volatile in cast is ignored |
Compiler warning (level 1, level 2, level 3, and level 4) C4199 | %s |
C/C++ Compiler and build tools errors and warnings
Compiler warnings C4000 - C5999