Edit

Share via


Compiler errors C7000 through C7499

The articles in this section of the documentation explain a subset of the error messages that are generated by the compiler.

Important

The Visual Studio compilers and build tools can report many kinds of errors and warnings. After an error or warning is found, the build tools may make assumptions about code intent and attempt to continue, so that more issues can be reported at the same time. If the tools make the wrong assumption, later errors or warnings may not apply to your project. When you correct issues in your project, always start with the first error or warning that's reported, and rebuild often. One fix may make many subsequent errors go away.

To get help on a particular diagnostic message in Visual Studio, select it in the Output window and press the F1 key. Visual Studio opens the documentation page for that error, if one exists. You can also use the search tool at the top of the page to find articles about specific errors or warnings. Or, browse the list of errors and warnings by tool and type in the table of contents on this page.

Note

Not every Visual Studio error or warning is documented. In many cases, the diagnostic message provides all of the information that's available. If you landed on this page when you used F1 and you think the error or warning message needs additional explanation, let us know. You can use the feedback buttons on this page to raise a documentation issue on GitHub. If you think the error or warning is wrong, or you've found another problem with the toolset, report a product issue on the Developer Community site. You can also send feedback and enter bugs within the IDE. In Visual Studio, go to the menu bar and choose Help > Send Feedback > Report a Problem, or submit a suggestion by using Help > Send Feedback > Send a Suggestion. Some compiler error topics were created that are not emitted by the compiler and now redirect to this page instead.

You may find additional assistance for errors and warnings in Microsoft Learn Q&A forums. Or, search for the error or warning number on the Visual Studio C++ Developer Community site. You can also search Stack Overflow to find solutions.

For links to additional help and community resources, see Visual C++ Help and Community.

Error messages

Error Message
Compiler error C7001 Invalid register.
Compiler error C7002 Invalid branch offset.
Compiler error C7003 Invalid branch offset greater than 4094 or less than -4096
Compiler error C7004 Invalid branch offset outside of __asm statement
Compiler error C7005 Wrong number of arguments (missing comma?)
Compiler error C7006 BRA to register is illegal. Using BRAF
Compiler error C7007 Invalid double register.
Compiler error C7008 Invalid float register.
Compiler error C7009 Invalid argument
Compiler error C7010 Register not valid as arg
Compiler error C7011 Argument types not valid for opcode
Compiler error C7012 label redefined
Compiler error C7013 label was undefined
Compiler error C7014 Variable not valid with opcode
Compiler error C7015 Inline Asm block too large. Please use blocks of 3000 lines or less.
Compiler error C7016 Load / Store operation not valid in context
Compiler error C7017 Invalid register(r0) in LOAD/STORE operation
Compiler error C7018 Could not find valid register
Compiler error C7019 Could not find valid register for argument 1
Compiler error C7020 Could not find valid register for argument 2
Compiler error C7021 Could not find valid register for argument 3
Compiler error C7022 Instruction invalid without /QSsh4
Compiler error C7023 Instruction invalid without /QSshx
Compiler error C7024 Instruction invalid without /QSdsp
Compiler error C7025 Branch into delay slot is illegal
Compiler error C7026 Final instruction has an empty delay slot
Compiler error C7027 Given instruction is invalid in a delay slot
Compiler error C7028 Unrecognized opcode. Treating unknown text as a label
Compiler error C7029 Final argument of PADD/PSUB can only be X0/Y0/A0/A1
Compiler error C7030 First argument of PMUL can only be X0/X1/Y0/A1
Compiler error C7031 Second argument of PMUL can only be Y0/Y1/X0/A1
Compiler error C7032 Final argument of PMUL can only be M0/M1/A0/A1
Compiler error C7033 Valid arguments are X0/X1/A0/A1/Y0/Y1/M0/M1
Compiler error C7034 Misaligned displacement value
Compiler error C7050 symbol already defined
Compiler error C7051 the symbol wasn't found in local table
Compiler error C7052 missing definition for label
Compiler error C7053 floating point Opcode used without -QMFPE-
Compiler error C7054 invalid floating point number
Compiler error C7055 coprocessor3 is undefined for the architecture given
Compiler error C7056 FPU uses the computation opcode space for coprocessor3 for MIPSIV
Compiler error C7057 PC register not allowed here
Compiler error C7058 SP register not allowed here
Compiler error C7059 RA register not allowed here
Compiler error C7060 Not allowed to use AT without .set noat
Compiler error C7061 Int register not allowed here
Compiler error C7062 Int32 register not allowed here
Compiler error C7063 FP register not allowed here
Compiler error C7064 condition code register not allowed here
Compiler error C7065 particular condition code register given not valid
Compiler error C7066 unrecognized register
Compiler error C7067 integer or floating point constants are not allowed here
Compiler error C7068 indirection not allowed here
Compiler error C7069 expected SP register
Compiler error C7070 expected PC register
Compiler error C7071 expected Mips 16 register
Compiler error C7072 expected character: ')'
Compiler error C7073 memory references are not allowed here
Compiler error C7074 expected index register, not integer offset
Compiler error C7075 this is not a valid register number
Compiler error C7076 index indirections not allowed here
Compiler error C7077 expected register
Compiler error C7078 this type of register is not allowed here
Compiler error C7079 '$' is not followed by a valid register identifier
Compiler error C7080 expected register - macro, not literal
Compiler error C7081 this is not a valid argument register number
Compiler error C7082 '%' is not followed by a valid register identifier
Compiler error C7083 expected string constant
Compiler error C7084 expected character: '
Compiler error C7085 undefined symbol in expression
Compiler error C7086 function literal used with call optimization
Compiler error C7087 entering label into table failed
Compiler error C7088 expected function, found label
Compiler error C7089 expected label, found function
Compiler error C7090 label not valid here
Compiler error C7091 expected label name
Compiler error C7092 unrecognized operand
Compiler error C7093 unidentified .set directive
Compiler error C7094 macro requires .set noreorder
Compiler error C7095 macro instruction used
Compiler error C7096 labels not allowed in repeat block
Compiler error C7097 .endr without matching .repeat found
Compiler error C7098 Immediate size is too large. Using LI.
Compiler error C7099 expected character: ','
Compiler error C7100 expected character: ':'
Compiler error C7101 expected character: %C
Compiler error C7102 expected another operand
Compiler error C7103 unidentified operand
Compiler error C7104 expected a positive integer constant
Compiler error C7105 expected character: ',' or ':'
Compiler error C7106 Symbol is not a label. Can't branch to this location.
Compiler error C7107 label or symbol redefinition
Compiler error C7108 unidentified instruction
Compiler error C7109 unsupported instruction
Compiler error C7110 is not a global function
Compiler error C7111 must use RA
Compiler error C7112 nop must be inside .set noreorder section
Compiler error C7113 did not find information on branch instruction
Compiler error C7114 expected immediate
Compiler error C7115 immediate too large
Compiler error C7116 opcode used without -QMn32
Compiler error C7117 must use label immediate in order to use PC offset
Compiler error C7118 one of the registers must be a MIPS16 register
Compiler error C7119 extra source text found beyond the end of instruction
Compiler error C7120 opcode used without -QMFPE-
Compiler error C7121 Invalid instruction for switches given. Check instruction set against switches given.
Compiler error C7122 unimplemented directive
Compiler error C7123 symbol is not a label
Compiler error C7124 LAU not supported in inline assembly
Compiler error C7125 instruction has unhandled dope for form given
Compiler error C7126 unable to branch to location given
Compiler error C7127 valid function not given
Compiler error C7128 invalid operand type
Compiler error C7129 instruction is not supported for inline assembly
Compiler error C7130 JALR should not use $31 alone or any register twice
Compiler error C7131 shift amount not in the range [0, 63]
Compiler error C7132 shift amount not in the range [0, 31]
Compiler error C7133 immediate value not in the range [0, 31]
Compiler error C7134 offset of the source operand not in the range [0, 7]
Compiler error C7135 offset of the second source operand not in the range [0, 7]
Compiler error C7136 vector-vector operation is not applicable for this instruction
Compiler error C7137 shift amount not in the range [0, 7]
Compiler error C7138 expected FP Control Register - 0 or 31
Compiler error C7139 invalid hint
Compiler error C7140 must use even register (64 bit register)
Compiler error C7141 must use vector (64 bit floating point register)
Compiler error C7142 invalid InlnExpression
Compiler error C7143 '/': division by zero
Compiler error C7144 '%': modulo by zero
Compiler error C7145 bitwise operations are not applicable on a float constant
Compiler error C7146 expected an operand
Compiler error C7147 unable to evaluate indirection
Compiler error C7148 undefined function
Compiler error C7149 label or symbol redefinition
Compiler error C7150 branch target is invalid
Compiler error C7151 branch and link instructions not supported in inline assembly
Compiler error C7152 BC1ANY2x can use only $fcc{0,2,4,6}
Compiler error C7153 BC1ANY4x can use only $fcc{0,4}
Compiler error C7200 '%s:' can only generate hybrid pop thunk for symbols with C linkage
Compiler error C7201 can only generate hybrid thunks for non-static functions
Compiler error C7202 '%s:' hybrid unsupported feature '%s.'
Compiler error C7203 '%s': '__declspec(hybrid_patchable)' can only be applied to class declarations or definitions, or non-static functions
Compiler error C7204 '%s': guest reference call signature does not match ('%s' != '%s')
Compiler error C7300 only a call to '%s' is allowed in this function

See also

C/C++ Compiler and build tools errors and warnings
Compiler errors C2000 - C3999, C7000 - C7999