weak based on new wrefc_t