• littledan's avatar
    Make RUNTIME_ASSERT have more useful output in debug mode · 78d84530
    littledan authored
    Runtime asserts are were previously a bit annoying to debug, due to
    the lack of a useful error message, even in debug mode. This patch
    prints out some more information in debug mode for runtime assert
    failures while preserving their exception-throwing semantics. While
    we're at it, it requires a semicolon after RUNTIME_ASSERT macro
    invocations.
    
    ```
    $ rlwrap out/Debug/d8 --allow-natives-syntax
    V8 version 5.1.0 (candidate)
    d8> %ArrayBufferNeuter(1)
    
    #
    # Runtime error in ../../src/runtime/runtime-typedarray.cc, line 52
    #
    # args[0]->IsJSArrayBuffer()
    
    ==== C stack trace ===============================
    
     1: 0xf70ab5
     2: 0xadeebf
     3: 0xadedd4
     4: 0x2ef17630693b
    (d8):1: illegal access
    %ArrayBufferNeuter(1)
    ^
    
    d8>
    ```
    
    Also give the other 'illegal access' case (a special SyntaxError type) a more
    descriptive error message for its sole usage.
    
    R=adamk
    
    Review URL: https://codereview.chromium.org/1748183002
    
    Cr-Commit-Position: refs/heads/master@{#34401}
    78d84530
Name
Last commit
Last update
..
platform Loading commit data...
utils Loading commit data...
DEPS Loading commit data...
OWNERS Loading commit data...
adapters.h Loading commit data...
atomicops.h Loading commit data...
atomicops_internals_arm64_gcc.h Loading commit data...
atomicops_internals_arm_gcc.h Loading commit data...
atomicops_internals_atomicword_compat.h Loading commit data...
atomicops_internals_mac.h Loading commit data...
atomicops_internals_mips64_gcc.h Loading commit data...
atomicops_internals_mips_gcc.h Loading commit data...
atomicops_internals_portable.h Loading commit data...
atomicops_internals_ppc_gcc.h Loading commit data...
atomicops_internals_s390_gcc.h Loading commit data...
atomicops_internals_tsan.h Loading commit data...
atomicops_internals_x86_gcc.cc Loading commit data...
atomicops_internals_x86_gcc.h Loading commit data...
atomicops_internals_x86_msvc.h Loading commit data...
bits.cc Loading commit data...
bits.h Loading commit data...
build_config.h Loading commit data...
compiler-specific.h Loading commit data...
cpu.cc Loading commit data...
cpu.h Loading commit data...
division-by-constant.cc Loading commit data...
division-by-constant.h Loading commit data...
flags.h Loading commit data...
functional.cc Loading commit data...
functional.h Loading commit data...
iterator.h Loading commit data...
lazy-instance.h Loading commit data...
logging.cc Loading commit data...
logging.h Loading commit data...
macros.h Loading commit data...
once.cc Loading commit data...
once.h Loading commit data...
qnx-math.h Loading commit data...
safe_conversions.h Loading commit data...
safe_conversions_impl.h Loading commit data...
safe_math.h Loading commit data...
safe_math_impl.h Loading commit data...
smart-pointers.h Loading commit data...
sys-info.cc Loading commit data...
sys-info.h Loading commit data...
win32-headers.h Loading commit data...