• 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
messages.h 38.3 KB