• Simon Zünd's avatar
    [torque] More flexibel and uniform error reporting · bdfd1e4b
    Simon Zünd authored
    This CL changes the existing TorqueError struct into a more general
    TorqueMessage by adding a "kind" enum. The contextual for lint errors
    is removed and replaced by a list of TorqueMessages.
    
    A MessageBuilder is introduced to help with the different
    combinations of present information and method of reporting. A lint
    error with custom SourcePosition can be reported like this:
    
    Lint("naming convention error").Position(<src_pos_var>);
    
    While a fatal error, with CurrentSourcePosition can be thrown
    like this:
    
    Error("something went horrible wrong").Throw();
    
    This approach is both backwards compatible and should prove flexible
    enough to add more information to messages or add other message kinds.
    
    Bug: v8:7793
    Change-Id: Ib04fa188e34b3e8e9a6526a086f80da8f690a6f5
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1617245
    Commit-Queue: Simon Zünd <szuend@chromium.org>
    Reviewed-by: 's avatarTobias Tebbi <tebbi@chromium.org>
    Reviewed-by: 's avatarSigurd Schneider <sigurds@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#61696}
    bdfd1e4b
utils.h 9.31 KB