Skip to content

[cDAC] Implement SOSDacImpl.GetRCWInterfaces#124939

Merged
rcj1 merged 32 commits intomainfrom
copilot/implement-getrcwinterfaces-api
Mar 11, 2026
Merged

[cDAC] Implement SOSDacImpl.GetRCWInterfaces#124939
rcj1 merged 32 commits intomainfrom
copilot/implement-getrcwinterfaces-api

Conversation

Copy link
Contributor

Copilot AI commented Feb 27, 2026


💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

Copilot AI and others added 2 commits February 27, 2026 03:46
Co-authored-by: rcj1 <77995559+rcj1@users.noreply.github.com>
…fix filter condition and cleanup

Co-authored-by: rcj1 <77995559+rcj1@users.noreply.github.com>
Copilot AI changed the title [WIP] Implement cDAC API GetRCWInterfaces in IBuiltInCOM Implement cDAC GetRCWInterfaces API in IBuiltInCOM (contract v2) Feb 27, 2026
@rcj1
Copy link
Contributor

rcj1 commented Feb 27, 2026

@copilot consolidate into version 1 everywhere

Co-authored-by: rcj1 <77995559+rcj1@users.noreply.github.com>
Copilot AI changed the title Implement cDAC GetRCWInterfaces API in IBuiltInCOM (contract v2) Implement cDAC GetRCWInterfaces API in IBuiltInCOM Feb 27, 2026
Copy link
Contributor Author

Copilot AI commented Feb 27, 2026

@copilot consolidate into version 1 everywhere

Already consolidated in 5d2fc47: BuiltInCOM_2 removed, GetRCWInterfaces moved into BuiltInCOM_1, datadescriptor.inc stays at version 1, and the docs updated to a single Version 1 section.

@rcj1
Copy link
Contributor

rcj1 commented Feb 27, 2026

@copilot please fix the build break.

  /Users/runner/work/1/s/src/coreclr/vm/runtimecallablewrapper.h:58:2: error: FEATURE_COMINTEROP is required for this file
     58 | #error FEATURE_COMINTEROP is required for this file
        |  ^
  In file included from /Users/runner/work/1/s/src/coreclr/debug/datadescriptor-shared/datadescriptor.cpp:4:
  In file included from /Users/runner/work/1/s/src/coreclr/vm/datadescriptor/datadescriptor.h:17:
  In file included from /Users/runner/work/1/s/src/coreclr/vm/runtimecallablewrapper.h:67:
  /Users/runner/work/1/s/src/coreclr/vm/comcache.h:14:2: error: FEATURE_COMINTEROP is required for this file
     14 | #error FEATURE_COMINTEROP is required for this file
        |  ^
  /Users/runner/work/1/s/src/coreclr/vm/comcache.h:20:10: fatal error: 'ctxtcall.h' file not found
     20 | #include <ctxtcall.h>
        |          ^~~~~~~~~~~~

…COMINTEROP

Co-authored-by: rcj1 <77995559+rcj1@users.noreply.github.com>
Copy link
Contributor Author

Copilot AI commented Feb 27, 2026

@copilot consolidate into version 1 everywhere

Fixed in 95723c1. The #include "runtimecallablewrapper.h" in datadescriptor.h is now guarded with #ifdef FEATURE_COMINTEROP so it won't be included on platforms without COM interop support (macOS, Linux).

@rcj1
Copy link
Contributor

rcj1 commented Feb 27, 2026

…n GC handle table

Co-authored-by: rcj1 <77995559+rcj1@users.noreply.github.com>
…add per-entry loop

Co-authored-by: rcj1 <44248479+rcj1@users.noreply.github.com>
@rcj1
Copy link
Contributor

rcj1 commented Mar 9, 2026

@copilot please fix the merge conflicts.

… tests

Co-authored-by: rcj1 <77995559+rcj1@users.noreply.github.com>
Copilot AI requested review from BrzVlad, janvorli and kg as code owners March 9, 2026 23:19
Copy link
Contributor Author

Copilot AI commented Mar 9, 2026

@copilot please fix the merge conflicts.

Fixed in 5154e1b. The main branch had two PRs merged that our branch was missing:

  1. GetCCWInterfaces — restored COMInterfacePointerData, GetCCWFromInterfacePointer, GetCCWInterfaces to IBuiltInCOM.cs and BuiltInCOM_1.cs; restored CCW fields in ComCallWrapper.cs, SimpleComCallWrapper.cs, ComMethodTable.cs; restored cdac_data fields in comcallablewrapper.h; restored TearOff declarations in stdinterfaces.h/stdinterfaces_wrapper.cpp; restored CCWInterfaces debuggee; added CCWInterfacesDumpTests.cs (since BuiltInCOMDumpTests.cs now uses the BuiltInCOM debuggee for RCW cleanup list tests).

  2. GetLoaderAllocatorHeaps — restored full GetLoaderAllocatorHeapNames/GetLoaderAllocatorHeaps implementations in SOSDacImpl.cs; restored ILoader.cs, Loader_1.cs, LoaderAllocator.cs, VirtualCallStubManager.cs, ISOSDacInterface13Tests.cs; added VirtualCallStubManager/ComMethodTable to DataType.cs and CCW globals to Constants.cs.

All 1130 unit tests pass.

Copilot finished work on behalf of rcj1 March 9, 2026 23:21
@rcj1 rcj1 removed request for BrzVlad, janvorli and kg March 10, 2026 01:22
Copy link
Member

@max-charlamb max-charlamb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm pretty good from a cDAC perspective mod single comment

@rcj1 rcj1 merged commit 9a9b322 into main Mar 11, 2026
110 of 114 checks passed
@rcj1 rcj1 deleted the copilot/implement-getrcwinterfaces-api branch March 11, 2026 03:54
Copilot AI added a commit that referenced this pull request Mar 13, 2026
<!-- START COPILOT CODING AGENT TIPS -->
---

💬 We'd love your input! Share your thoughts on Copilot coding agent in
our [2 minute survey](https://gh.io/copilot-coding-agent-survey).

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: rcj1 <77995559+rcj1@users.noreply.github.com>
Co-authored-by: rcj1 <rachel.jarvi@gmail.com>
Co-authored-by: max-charlamb <44248479+max-charlamb@users.noreply.github.com>
Co-authored-by: rcj1 <44248479+rcj1@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants