Implement [LWG 4144](https://cplusplus.github.io/LWG/issue4144) by explicitly rejecting `unique_ptr<T, D>` when `T*` is not a valid type. This adds a pointability check and tests reference and abominable function types. Fixes #118359
Implement [LWG 4144](https://cplusplus.github.io/LWG/issue4144) by explicitly rejecting `unique_ptr<T, D>` when `T*` is not a valid type. This adds a pointability check and tests reference and abominable function types. Fixes #118359