  the write barrier also goes through trace it just goes there indirectly through the marking worklist trace  should be equvialent to tracetrait t  for regular objects and tracecollectionifenabled what the   fuck   knoweakhandling  t  traits trace for collections  we call trace  instead of notifynewobjects because we know that it is a gc ed object and we want a call 