In file included from persistent_field_in_gc_managed_class.cpp:5: ./persistent_field_in_gc_managed_class.h:20:1: warning: [blink-gc] Class 'HeapObject' contains GC root in field 'm_part'. class HeapObject : public GarbageCollected { ^ ./persistent_field_in_gc_managed_class.h:27:5: note: [blink-gc] Field 'm_part' with embedded GC root in 'HeapObject' declared here: PartObject m_part; ^ ./persistent_field_in_gc_managed_class.h:17:5: note: [blink-gc] Field 'm_obj' defining a GC root declared here: Persistent m_obj; ^ ./persistent_field_in_gc_managed_class.h:20:1: warning: [blink-gc] Class 'HeapObject' contains GC root in field 'm_parts'. class HeapObject : public GarbageCollected { ^ ./persistent_field_in_gc_managed_class.h:28:5: note: [blink-gc] Field 'm_parts' with embedded GC root in 'HeapObject' declared here: HeapVector m_parts; ^ ./persistent_field_in_gc_managed_class.h:17:5: note: [blink-gc] Field 'm_obj' defining a GC root declared here: Persistent m_obj; ^ ./persistent_field_in_gc_managed_class.h:20:1: warning: [blink-gc] Class 'HeapObject' contains GC root in field 'm_unique_part'. class HeapObject : public GarbageCollected { ^ ./persistent_field_in_gc_managed_class.h:29:5: note: [blink-gc] Field 'm_unique_part' with embedded GC root in 'HeapObject' declared here: std::unique_ptr m_unique_part; ^ ./persistent_field_in_gc_managed_class.h:17:5: note: [blink-gc] Field 'm_obj' defining a GC root declared here: Persistent m_obj; ^ ./persistent_field_in_gc_managed_class.h:20:1: warning: [blink-gc] Class 'HeapObject' contains GC root in field 'm_objs'. class HeapObject : public GarbageCollected { ^ ./persistent_field_in_gc_managed_class.h:30:5: note: [blink-gc] Field 'm_objs' defining a GC root declared here: Persistent>> m_objs; ^ ./persistent_field_in_gc_managed_class.h:20:1: warning: [blink-gc] Class 'HeapObject' contains GC root in field 'm_weakPersistent'. class HeapObject : public GarbageCollected { ^ ./persistent_field_in_gc_managed_class.h:31:5: note: [blink-gc] Field 'm_weakPersistent' defining a GC root declared here: WeakPersistent m_weakPersistent; ^ ./persistent_field_in_gc_managed_class.h:20:1: warning: [blink-gc] Class 'HeapObject' contains a reference to a GC root in field 'm_ref'. Avoid holding references to GC roots. This should generally not be needed. class HeapObject : public GarbageCollected { ^ ./persistent_field_in_gc_managed_class.h:32:5: note: [blink-gc] Field 'm_ref' defining reference to a GC root declared here: Persistent& m_ref; ^ ./persistent_field_in_gc_managed_class.h:20:1: warning: [blink-gc] Class 'HeapObject' contains a reference to a GC root in field 'm_ptr'. Avoid holding references to GC roots. This should generally not be needed. class HeapObject : public GarbageCollected { ^ ./persistent_field_in_gc_managed_class.h:33:5: note: [blink-gc] Field 'm_ptr' defining reference to a GC root declared here: Persistent* m_ptr; ^ 7 warnings generated.