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 |