I think it’s also worthwhile to remove the anonymous namespace wrapping each of these DestroyFunc structures when renaming them. Generally speaking, anonymous namespace doesn’t work when compilation units are arbitrary, since they say “limit this to one compilation unit”. So I’m not sure we should ever use them any more. — Darin