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

Unified Diff: tools/clang/blink_gc_plugin/RecordInfo.cpp

Issue 2061143002: gc plugin: remove ScriptWrappable destructor special case. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 6 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: tools/clang/blink_gc_plugin/RecordInfo.cpp
diff --git a/tools/clang/blink_gc_plugin/RecordInfo.cpp b/tools/clang/blink_gc_plugin/RecordInfo.cpp
index f0e2ade715bb63255b5d0e34eaf54097de1c28b7..1eef514f929a49ad9f4c31449caaa657efaf5dad 100644
--- a/tools/clang/blink_gc_plugin/RecordInfo.cpp
+++ b/tools/clang/blink_gc_plugin/RecordInfo.cpp
@@ -510,14 +510,6 @@ bool RecordInfo::NeedsFinalization() {
if (!does_need_finalization_)
return does_need_finalization_;
- // Processing a class with a safely-ignorable destructor.
- NamespaceDecl* ns =
- dyn_cast<NamespaceDecl>(record_->getDeclContext());
- if (ns && Config::HasIgnorableDestructor(ns->getName(), name_)) {
- does_need_finalization_ = kFalse;
- return does_need_finalization_;
- }
-
CXXDestructorDecl* dtor = record_->getDestructor();
if (dtor && dtor->isUserProvided())
return does_need_finalization_;
@@ -545,10 +537,7 @@ bool RecordInfo::NeedsFinalization() {
// - it is allocated on the managed heap,
// - it is derived from a class that needs tracing, or
// - it contains fields that need tracing.
-// TODO: Defining NeedsTracing based on whether a class defines a trace method
-// (of the proper signature) over approximates too much. The use of transition
-// types causes some classes to have trace methods without them needing to be
-// traced.
+//
TracingStatus RecordInfo::NeedsTracing(Edge::NeedsTracingOption option) {
if (IsGCAllocated())
return TracingStatus::Needed();
« no previous file with comments | « tools/clang/blink_gc_plugin/Config.h ('k') | tools/clang/blink_gc_plugin/tests/class_requires_finalization_base.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698