Description
A number of classes have non-owning raw ptrs, typically as some member [const] T*. Raw C ptrs are not initialized on declaration which makes it very convenient to introduce uninitialized variables.
We should consider introducing a very thin, non-owning wrapper around raw ptrs which ensures the wrapper raw ptr is properly initialized to nullptr. It should be possible to implement such a wrapper without adding new runtime overhead to correct usage of raw ptrs.