Skip to content

Select automatic COM and WinRT output marshalling - #1770

Closed
Jevan Saks (jevansaks) wants to merge 8 commits into
mainfrom
user/jevansa/com-out-ptr-marshalling-design
Closed

Select automatic COM and WinRT output marshalling#1770
Jevan Saks (jevansaks) wants to merge 8 commits into
mainfrom
user/jevansa/com-out-ptr-marshalling-design

Conversation

@jevansaks

@jevansaks Jevan Saks (jevansaks) commented Jul 30, 2026

Copy link
Copy Markdown
Member

Summary

  • Selects automatic QI(IInspectable) detection for recognized COM object outputs.
  • Defines default-on behavior with a NativeMethods.json opt-out.
  • Documents source-generated P/Invoke, generated COM managed call paths, built-in COM, and Native AOT behavior.
  • Uses COM identity output for managed implementations; the consuming adaptive projection and generic cast select the requested interface.
  • Retains the caller-selected policy as the evaluated alternative and updates the comparison with the final decision.
  • Keeps exact-riid native-server output, unique COM ownership, and non-canonical output pairs out of scope.

Validation

Docs-only change.

Implementation: #1771

Generated with Copilot CLI, model: GPT-5.6 Sol.

Jevan Saks (jevansaks) and others added 3 commits July 29, 2026 17:03
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: b24622c7-c9d6-44f0-9a20-85aac5ff11d6
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: b24622c7-c9d6-44f0-9a20-85aac5ff11d6
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: b24622c7-c9d6-44f0-9a20-85aac5ff11d6
@jevansaks

Copy link
Copy Markdown
Member Author

Prototype implementation: #1771

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: b24622c7-c9d6-44f0-9a20-85aac5ff11d6
@jevansaks Jevan Saks (jevansaks) changed the title Design policy-based COM output pointer marshalling Design COM object out-parameter marshalling policies Jul 30, 2026
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: b24622c7-c9d6-44f0-9a20-85aac5ff11d6
@jevansaks Jevan Saks (jevansaks) changed the title Design COM object out-parameter marshalling policies Design adaptive COM and WinRT object out marshalling Jul 30, 2026
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: b24622c7-c9d6-44f0-9a20-85aac5ff11d6
@jevansaks Jevan Saks (jevansaks) changed the title Design adaptive COM and WinRT object out marshalling Compare COM and WinRT object out marshalling designs Jul 30, 2026
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: b24622c7-c9d6-44f0-9a20-85aac5ff11d6
@jevansaks Jevan Saks (jevansaks) changed the title Compare COM and WinRT object out marshalling designs Select automatic COM and WinRT output marshalling Jul 31, 2026
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: b24622c7-c9d6-44f0-9a20-85aac5ff11d6
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant