Software that needs to be written in C, as opposed to in friendlier or more aggressively constrained languages, is that which needs to deal in hardware. Things like there's a value at absolute address k which you load from to indicate to some other part of the system that a thing has happened.
The domain is exclusively stuff that can be written in asm but it's cheaper and saner not to.
The pointer provenance strategy miscompiles enough of that domain to be unsafe to use. It interacts particularly poorly with the aliasing model that thwarts treating memory as an array of integers, or an array of atomic integers, or an array of simd types.
The end game of this "sound semantics" strategy, as favoured by WG14, is a language with zero use cases. You can't put it near hardware without fno-strict-aliasing and whatever flag turns off provenance based reasoning. You don't want to put it near anything else because C++ freestanding, D and rust are all faster and safer.
It's interesting work that can help provide sane semantics for fairly low level code. It's a real shame that it comes at the price of killing C.
edit: I read the chapters on memory and provenance. The authors are aware that provenance doesn't correspond to programs as written, and propose a few variations on it to try to open well judged escape hatches. As expected prior to writing the above rant. It's still miscompile by default when dealing with the real machine.