> but I think you're much more likely to actually get the built-in > approach to work correctly in C++.
But... initializing function pointers already works, without builtins. Initializing an N bit pointer from an N bit integer now works with a cast. Copying an N bit pointer to another N bit pointer works. The only part that needs a builtin at this point is runtime conversion of pointer values, at least to specify sign or zero extension. That, and dereferencing. I see no value in adding a builtin for something that already works just fine without a builtin.