• Maya Lekova's avatar
    Revert "Implement top-level await for REPL mode" · 99005f33
    Maya Lekova authored
    This reverts commit 5bddc0e1.
    
    Reason for revert: Possible culprit for https://bugs.chromium.org/p/chromium/issues/detail?id=1029863
    
    Original change's description:
    > Implement top-level await for REPL mode
    > 
    > Design doc: bit.ly/v8-repl-mode
    > 
    > This CL allows the usage of 'await' without wrapping code in an async
    > function when using REPL mode in global evaluate. REPL mode evaluate
    > is changed to *always* return a Promise. The resolve value of the
    > promise is the completion value of the REPL script.
    > 
    > The implementation is based on two existing mechanisms:
    >   - Similar to async functions, the content of a REPL script is
    >     enclosed in a synthetic 'try' block. Any thrown error
    >     is used to reject the Promise of the REPL script.
    > 
    >   - The content of the synthetic 'try' block is also re-written the
    >     same way a normal script is. This is, artificial assignments to
    >     a ".result" variable are inserted to simulate a completion
    >     value. The difference for REPL scripts is, that ".result" is
    >     used to resolve the Promise of the REPL script.
    > 
    >   - ".result" is not returned directly but wrapped in an object
    >     literal: "{ .repl_result: .result}". This is done to prevent
    >     resolved promises from being chained and resolved prematurely:
    > 
    >     > Promse.resolve(42);
    > 
    >     should evaluate to a promise, not 42.
    > 
    > Bug: chromium:1021921
    > Change-Id: I00a5aafd9126ca7c97d09cd8787a3aec2821a67f
    > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1900464
    > Reviewed-by: Yang Guo <yangguo@chromium.org>
    > Reviewed-by: Leszek Swirski <leszeks@chromium.org>
    > Reviewed-by: Toon Verwaest <verwaest@chromium.org>
    > Commit-Queue: Simon Zünd <szuend@chromium.org>
    > Cr-Commit-Position: refs/heads/master@{#65273}
    
    TBR=yangguo@chromium.org,leszeks@chromium.org,verwaest@chromium.org,szuend@chromium.org
    
    # Not skipping CQ checks because original CL landed > 1 day ago.
    
    Bug: chromium:1021921
    Change-Id: I9eaea584e2e09f3dffcbbca3d75a3c9bcb0a1adf
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1948719Reviewed-by: 's avatarMaya Lekova <mslekova@chromium.org>
    Commit-Queue: Maya Lekova <mslekova@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#65333}
    99005f33
Name
Last commit
Last update
..
api Loading commit data...
asmjs Loading commit data...
ast Loading commit data...
base Loading commit data...
builtins Loading commit data...
codegen Loading commit data...
common Loading commit data...
compiler Loading commit data...
compiler-dispatcher Loading commit data...
d8 Loading commit data...
date Loading commit data...
debug Loading commit data...
deoptimizer Loading commit data...
diagnostics Loading commit data...
execution Loading commit data...
extensions Loading commit data...
flags Loading commit data...
handles Loading commit data...
heap Loading commit data...
ic Loading commit data...
init Loading commit data...
inspector Loading commit data...
interpreter Loading commit data...
json Loading commit data...
libplatform Loading commit data...
libsampler Loading commit data...
logging Loading commit data...
numbers Loading commit data...
objects Loading commit data...
parsing Loading commit data...
profiler Loading commit data...
protobuf Loading commit data...
regexp Loading commit data...
roots Loading commit data...
runtime Loading commit data...
sanitizer Loading commit data...
snapshot Loading commit data...
strings Loading commit data...
tasks Loading commit data...
third_party Loading commit data...
torque Loading commit data...
tracing Loading commit data...
trap-handler Loading commit data...
utils Loading commit data...
wasm Loading commit data...
zone Loading commit data...
DEPS Loading commit data...
OWNERS Loading commit data...