I think we can't do that because we need to be a bit careful about how we push the idents we meet on to collected_paths. And in the struct case we need a whole lot of extra info too.