Chromium Code Reviews| Index: src/isolate.h |
| diff --git a/src/isolate.h b/src/isolate.h |
| index 2ea9b80b69c975046cf797106b7714469cc190cd..0b1604fa566e3981efeec8ca259ec0df1fa7c829 100644 |
| --- a/src/isolate.h |
| +++ b/src/isolate.h |
| @@ -1,4 +1,4 @@ |
| -// Copyright 2011 the V8 project authors. All rights reserved. |
| +// Copyright 2012 the V8 project authors. All rights reserved. |
| // Redistribution and use in source and binary forms, with or without |
| // modification, are permitted provided that the following conditions are |
| // met: |
| @@ -106,15 +106,20 @@ class Simulator; |
| // of handles to the actual constants. |
| typedef ZoneList<Handle<Object> > ZoneObjectList; |
| -#define RETURN_IF_SCHEDULED_EXCEPTION(isolate) \ |
| - if (isolate->has_scheduled_exception()) \ |
| - return isolate->PromoteScheduledException() |
| +#define RETURN_IF_SCHEDULED_EXCEPTION(isolate) \ |
| + do { \ |
| + if (isolate->has_scheduled_exception()) { \ |
|
Sven Panne
2012/01/04 13:19:49
We should probably always use parentheses around a
|
| + return isolate->PromoteScheduledException(); \ |
| + } \ |
| + } while (false) |
| #define RETURN_IF_EMPTY_HANDLE_VALUE(isolate, call, value) \ |
| - if (call.is_null()) { \ |
| - ASSERT(isolate->has_pending_exception()); \ |
| - return value; \ |
| - } |
| + do { \ |
| + if (call.is_null()) { \ |
|
Sven Panne
2012/01/04 13:19:49
Parentheses again in this macro...
|
| + ASSERT(isolate->has_pending_exception()); \ |
| + return value; \ |
| + } \ |
| + } while (false) |
| #define RETURN_IF_EMPTY_HANDLE(isolate, call) \ |
| RETURN_IF_EMPTY_HANDLE_VALUE(isolate, call, Failure::Exception()) |