diff options
Diffstat (limited to 'vm/analysis/CodeVerify.cpp')
-rw-r--r-- | vm/analysis/CodeVerify.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/vm/analysis/CodeVerify.cpp b/vm/analysis/CodeVerify.cpp index 4a0d3d71d..a230590db 100644 --- a/vm/analysis/CodeVerify.cpp +++ b/vm/analysis/CodeVerify.cpp @@ -3737,7 +3737,7 @@ static bool doCodeVerification(VerifierData* vdata, RegisterTable* regTable) if (instr == kPackedSwitchSignature || instr == kSparseSwitchSignature || instr == kArrayDataSignature || - (instr == OP_NOP && + (instr == OP_NOP && (insnIdx + 1 < insnsSize) && (meth->insns[insnIdx+1] == kPackedSwitchSignature || meth->insns[insnIdx+1] == kSparseSwitchSignature || meth->insns[insnIdx+1] == kArrayDataSignature))) @@ -4318,6 +4318,11 @@ static bool verifyInstruction(const Method* meth, InsnFlags* insnFlags, valueType = primitiveTypeToRegType( resClass->elementClass->primitiveType); assert(valueType != kRegTypeUnknown); +#ifdef NDEBUG + // assert is optimized out, leaving valueType defined but + // not used, causing a compiler warning -> error on -Werror + (void)valueType; +#endif /* * Now verify if the element width in the table matches the element |