microsoft / cppwinrt

C++/WinRT
MIT License
1.64k stars 238 forks source link

Bug: C++/WinRT headers do not hide experimental APIs #1432

Open rossnichols opened 3 weeks ago

rossnichols commented 3 weeks ago

Version

v2.0.230511.6

Summary

The "ABI" headers for WinRT APIs by default do not expose experimental APIs - the symbol ENABLE_WINRT_EXPERIMENTAL_TYPES must be defined before including the header. C++/WinRT headers, by contrast, do not hide these types, so it's unclear from a developer perspective that they are experimental.

Reproducible example

I don't have a handy repro - I discovered this issue when developing an experimental WinRT API that is still unreleased.

Expected behavior

I expected to have to "opt-in" somehow to experimental types before including the C++/WinRT headers for an experimental API I'd like to consume.

Actual behavior

I didn't have to do anything special.

Additional comments

No response

github-actions[bot] commented 2 weeks ago

This issue is stale because it has been open 10 days with no activity. Remove stale label or comment or this will be closed in 5 days.

rossnichols commented 1 week ago

(commenting to satisfy the bot) @oldnewthing is there anything you need from me to make this actionable?