[parser] Skipping inner funcs: Add debug code.
There are some mysterious, unreproducible CHECK failures (inconsistent data). Add more information onto the stack (and thus, to minidumps) for debugging them. BUG=v8:5516,chromium:766693 Change-Id: Ic1ebc3036957ede4e3e1c1d287479897e54e40ed Reviewed-on: https://chromium-review.googlesource.com/677294 Reviewed-by: Camillo Bruni <cbruni@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#48111}
This commit is contained in:
parent
3a06391166
commit
70e0261a95
@ -478,6 +478,13 @@ void ConsumedPreParsedScopeData::RestoreData(Scope* scope,
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (scope_data->length() < index_ + 1) {
|
||||||
|
// Temporary debugging code for detecting inconsistent data. Write debug
|
||||||
|
// information on the stack, then crash.
|
||||||
|
scope_data->GetIsolate()->PushStackTraceAndDie(0xc0defee, nullptr, nullptr,
|
||||||
|
0xc0defee);
|
||||||
|
}
|
||||||
|
|
||||||
// scope_type is stored only in debug mode.
|
// scope_type is stored only in debug mode.
|
||||||
CHECK_GE(scope_data->length(), index_ + 1);
|
CHECK_GE(scope_data->length(), index_ + 1);
|
||||||
DCHECK_GE(scope_data->length(), index_ + 2);
|
DCHECK_GE(scope_data->length(), index_ + 2);
|
||||||
|
Loading…
Reference in New Issue
Block a user