There is currently a gap when combining cppwinrt usage with WIL and it's logging functionality. The gap is that cppwinrt exceptions that come out of winrt::throw_hresult are invisible to WIL. This is problematic in a few ways so it would be best to fill this gap so that these libraries interop better.
To achieve that an extension point should be added to winrt::throw_hresult. This extension point will be nullptr in normal usage. When <wil/cppwinrt.h> is included it will wire the extension point with a function pointer that can take the exception information and log it appropriately. (This will also require a change to WIL).
There is currently a gap when combining cppwinrt usage with WIL and it's logging functionality. The gap is that cppwinrt exceptions that come out of winrt::throw_hresult are invisible to WIL. This is problematic in a few ways so it would be best to fill this gap so that these libraries interop better.
To achieve that an extension point should be added to winrt::throw_hresult. This extension point will be nullptr in normal usage. When <wil/cppwinrt.h> is included it will wire the extension point with a function pointer that can take the exception information and log it appropriately. (This will also require a change to WIL).