Chromium Code Reviews| Index: src/isolate.h |
| diff --git a/src/isolate.h b/src/isolate.h |
| index bdc3210ca2b0424c405862a45e06f64923db4196..3d00c514165ef97b91147b40f0e79b65882490c6 100644 |
| --- a/src/isolate.h |
| +++ b/src/isolate.h |
| @@ -747,7 +747,13 @@ class Isolate { |
| // clause will consume or re-throw an exception. We conservatively assume any |
| // finally clause will behave as if the exception were consumed. |
| enum CatchType { NOT_CAUGHT, CAUGHT_BY_JAVASCRIPT, CAUGHT_BY_EXTERNAL }; |
| - CatchType PredictExceptionCatcher(); |
| + // With the PRECISE mode, try-finally is considered to catch the exception, |
| + // as the exception may or may not be rethrown. With the CONSERVATIVE mode, |
| + // try-finally is considered to always rethrow. This is to meet the |
| + // expectation of the debugger. |
| + enum ExceptionPredictionMode { PRECISE_PREDICTION, CONSERVATIVE_PREDICTION }; |
| + CatchType PredictExceptionCatcher( |
| + ExceptionPredictionMode prediction_mode = PRECISE_PREDICTION); |
|
Michael Starzinger
2015/05/29 09:00:55
As discussed offline: The only reason PredictExcep
|
| void ScheduleThrow(Object* exception); |
| // Re-set pending message, script and positions reported to the TryCatch |