Yes, I was. You don’t want that? I’m surprised. I find it so annoying to write code like (*x).foo.
True. So does Rc, though (for better or worse).
Well, I don’t agree, but it doesn’t really matter. If I ever make a concrete proposal, we can argue about it there. I was mostly just trying to argue that we want to be as clear as possible about identifying unsafe operations. I do agree that the lexical scoping of unsafe blocks is not a good fit for MIR, but clearly identifying what operations take place IS a good fit.
In any case, * is no longer the only potentially unsafe operator. Per RFC 1240, taking the address of a field of a packed struct is also unsafe. To make this check work properly for match statements seems like it will require something like the EUV, which I expect to go away in favor of MIR.