use std::shared_ptrs pervasively
This allows us to drop all the destructors and simply let reference counting do its job. I don't think we should take this approach in the checker because shared_ptrs aren't free, but the generator is not performance critical. Note we retain a raw pointer for ExprID::type_of. It's difficult to avoid this without introducing circular references or memory leaks. I think it's fine for now.
parent
ce97aa2e
Please register or sign in to comment