Commit e7fc4279 authored by bjaideep's avatar bjaideep Committed by Commit bot

s390: Fix FunctionBodyDecoderTest to compile with gcc4.8.5

GCC4.8.5 on s390 emits warning "array subscript is above array bounds"
for line "code[pos + 1] = kLocalVoid;". The warning seems to be
correct because code[sizeof(code)] should be out of bounds.
I'm suggesting to run the loop till "sizeof(code) - 1" which GCC(4.8.5)
agrees with. Although this means the last byte is missed, but it should
be safe to do since the last few bytes are "0xb" (kExprEnd) and the
offending statement is only run when byte=kExprBlock.

R=titzer@chromium.org, mstarzinger@chromium.org, bradnelson@chromium.org
BUG=
LOG=N

Review-Url: https://codereview.chromium.org/2619063002
Cr-Commit-Position: refs/heads/master@{#42145}
parent 63952fd4
...@@ -1857,7 +1857,7 @@ TEST_F(FunctionBodyDecoderTest, BreakNesting_6_levels) { ...@@ -1857,7 +1857,7 @@ TEST_F(FunctionBodyDecoderTest, BreakNesting_6_levels) {
int depth = 6; int depth = 6;
int m = mask; int m = mask;
for (size_t pos = 0; pos < sizeof(code); pos++) { for (size_t pos = 0; pos < sizeof(code) - 1; pos++) {
if (code[pos] != kExprBlock) continue; if (code[pos] != kExprBlock) continue;
if (m & 1) { if (m & 1) {
code[pos] = kExprLoop; code[pos] = kExprLoop;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment