What's the cost of reraising an exception?

Viewed 764

Is this

try
  DoSomethingThatMightThrowAnException;
except
  on E : ESyntaxError do
    begin
    if (E.ErrorCode = errMissingBracket) then
      HandleError
    else
      raise;
    end;
end;

slower than this?

try
  DoSomethingThatMightThrowAnException;
except
  on E : EMissingBracketSyntaxError do
    begin
    HandleError;
    end;
end;

What's the difference to be expected? Does it matter? Note that this could happen several times through the call stack.

4 Answers
Related