Hello @jpmugaas and welcome to our community!
I believe this is inaccurate as the following should be equivalent:
typedef HRESULT(__stdcall* pfun1)(int* param);
using pfun2 = HRESULT (__stdcall*)(int* param);
Does your compiler reject the second form? If so, can you share the error message and information about your compiler?
Thanks