Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(83)

Unified Diff: runtime/vm/object.h

Issue 2692803006: Track the 'awaiter return' call stack use it to detect uncaught exceptions in async functions (Closed)
Patch Set: rmacnak review Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: runtime/vm/object.h
diff --git a/runtime/vm/object.h b/runtime/vm/object.h
index 36f35dbfe3b2c8987b756c8ae1bcdc48fda39a3d..2cd88fba640eb6243fbbe374d100d68655c39f0c 100644
--- a/runtime/vm/object.h
+++ b/runtime/vm/object.h
@@ -4513,12 +4513,15 @@ class ExceptionHandlers : public Object {
uword HandlerPCOffset(intptr_t try_index) const;
intptr_t OuterTryIndex(intptr_t try_index) const;
bool NeedsStackTrace(intptr_t try_index) const;
+ bool IsGenerated(intptr_t try_index) const;
void SetHandlerInfo(intptr_t try_index,
intptr_t outer_try_index,
uword handler_pc_offset,
bool needs_stacktrace,
- bool has_catch_all) const;
+ bool has_catch_all,
+ TokenPosition token_pos,
+ bool is_generated) const;
RawArray* GetHandledTypes(intptr_t try_index) const;
void SetHandledTypes(intptr_t try_index, const Array& handled_types) const;
@@ -4682,6 +4685,16 @@ class Code : public Object {
StorePointer(&raw_ptr()->code_source_map_, code_source_map.raw());
}
+ RawArray* await_token_positions() const {
+#if defined(DART_PRECOMPILED_RUNTIME)
+ return Array::null();
+#else
+ return raw_ptr()->await_token_positions_;
+#endif
+ }
+
+ void SetAwaitTokenPositions(const Array& await_token_positions) const;
+
// Used during reloading (see object_reload.cc). Calls Reset on all ICDatas
// that are embedded inside the Code object.
void ResetICDatas(Zone* zone) const;

Powered by Google App Engine
This is Rietveld 408576698