1 In file included from fields_illegal_tracing.cpp:5: 2 ./fields_illegal_tracing.h:32:1: warning: [blink-gc] Class 'PartObject' contains invalid fields. 3 class PartObject { 4 ^ 5 ./fields_illegal_tracing.h:37:5: note: [blink-gc] RefPtr field 'm_obj2' to a GC managed class declared here: 6 RefPtr<HeapObject> m_obj2; 7 ^ 8 ./fields_illegal_tracing.h:39:5: note: [blink-gc] std::unique_ptr field 'm_obj4' to a GC managed class declared here: 9 std::unique_ptr<HeapObject> m_obj4; 10 ^ 11 ./fields_illegal_tracing.h:41:5: warning: [blink-gc] Iterator field 'm_iterator2' to a GC managed collection declared here: 12 HeapVector<Member<HeapObject>>::iterator m_iterator2; 13 ^ 14 ./fields_illegal_tracing.h:42:5: warning: [blink-gc] Iterator field 'm_iterator3' to a GC managed collection declared here: 15 HeapHashSet<PartObject>::const_iterator m_iterator3; 16 ^ 17 ./fields_illegal_tracing.h:45:1: warning: [blink-gc] Class 'HeapObject' contains invalid fields. 18 class HeapObject : public GarbageCollectedFinalized<HeapObject> { 19 ^ 20 ./fields_illegal_tracing.h:50:5: note: [blink-gc] RefPtr field 'm_obj2' to a GC managed class declared here: 21 RefPtr<HeapObject> m_obj2; 22 ^ 23 ./fields_illegal_tracing.h:52:5: note: [blink-gc] std::unique_ptr field 'm_obj4' to a GC managed class declared here: 24 std::unique_ptr<HeapObject> m_obj4; 25 ^ 26 ./fields_illegal_tracing.h:53:5: warning: [blink-gc] Iterator field 'm_iterator3' to a GC managed collection declared here: 27 HeapHashMap<int, Member<HeapObject>>::reverse_iterator m_iterator3; 28 ^ 29 ./fields_illegal_tracing.h:54:5: warning: [blink-gc] Iterator field 'm_iterator4' to a GC managed collection declared here: 30 HeapDeque<Member<HeapObject>>::const_reverse_iterator m_iterator4; 31 ^ 32 ./fields_illegal_tracing.h:56:5: warning: [blink-gc] Iterator field 'm_iterator6' to a GC managed collection declared here: 33 HeapLinkedHashSet<Member<HeapObject>>::const_iterator m_iterator6; 34 ^ 35 fields_illegal_tracing.cpp:9:1: warning: [blink-gc] Class 'PartObject' has untraced or not traceable fields. 36 void PartObject::Trace(Visitor* visitor) { 37 ^ 38 ./fields_illegal_tracing.h:37:5: note: [blink-gc] Untraceable field 'm_obj2' declared here: 39 RefPtr<HeapObject> m_obj2; 40 ^ 41 ./fields_illegal_tracing.h:39:5: note: [blink-gc] Untraceable field 'm_obj4' declared here: 42 std::unique_ptr<HeapObject> m_obj4; 43 ^ 44 fields_illegal_tracing.cpp:15:1: warning: [blink-gc] Class 'HeapObject' has untraced or not traceable fields. 45 void HeapObject::Trace(Visitor* visitor) { 46 ^ 47 ./fields_illegal_tracing.h:50:5: note: [blink-gc] Untraceable field 'm_obj2' declared here: 48 RefPtr<HeapObject> m_obj2; 49 ^ 50 ./fields_illegal_tracing.h:52:5: note: [blink-gc] Untraceable field 'm_obj4' declared here: 51 std::unique_ptr<HeapObject> m_obj4; 52 ^ 53 ./fields_illegal_tracing.h:55:5: note: [blink-gc] Untraced field 'm_iterator5' declared here: 54 HeapListHashSet<Member<HeapObject>>::const_iterator m_iterator5; 55 ^ 56 9 warnings generated. 57