Skip to content

[cppinterop] Upgrade to latest for cppyy migration - #22728

Merged
aaronj0 merged 4 commits into
root-project:masterfrom
aaronj0:cppinterop-upgrade
Jul 10, 2026
Merged

[cppinterop] Upgrade to latest for cppyy migration#22728
aaronj0 merged 4 commits into
root-project:masterfrom
aaronj0:cppinterop-upgrade

Conversation

@aaronj0

@aaronj0 aaronj0 commented Jun 29, 2026

Copy link
Copy Markdown
Contributor

Test and land the latest upgrade, required to rebase the cppyy migration PR on top

@aaronj0
aaronj0 requested a review from guitargeek June 29, 2026 12:18
@aaronj0 aaronj0 self-assigned this Jun 29, 2026
@github-actions

github-actions Bot commented Jun 29, 2026

Copy link
Copy Markdown

Test Results

    23 files      23 suites   3d 15h 25m 57s ⏱️
 3 871 tests  3 871 ✅ 0 💤 0 ❌
78 767 runs  78 767 ✅ 0 💤 0 ❌

Results for commit 11a13bb.

♻️ This comment has been updated with latest results.

@vgvassilev

Copy link
Copy Markdown
Member

@aaronj0, I believe we need to also move Box.h to ROOTSYS/etc

@aaronj0

aaronj0 commented Jun 29, 2026

Copy link
Copy Markdown
Contributor Author

@aaronj0, I believe we need to also move Box.h to ROOTSYS/etc

Yes, I have that obvious change and more patches in the pipeline.. (adapting to the new types, etc)
Will push all at once, when my local build is green

@aaronj0

aaronj0 commented Jul 3, 2026

Copy link
Copy Markdown
Contributor Author

I believe this upgrade now passes the CI, the windows x64 failures are visible on master. I will upstream the required patches and bump this upgrade to the latest commit. cc @guitargeek

@aaronj0
aaronj0 force-pushed the cppinterop-upgrade branch from 4dbc826 to a0a483b Compare July 3, 2026 12:22
@aaronj0 aaronj0 added the clean build Ask CI to do non-incremental build on PR label Jul 3, 2026
Comment thread interpreter/CppInterOp/unittests/CppInterOp/VTableOverlayTest.cpp

@guitargeek guitargeek left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

LGTM! Thanks for the update. Unfortunately we don't have green builds on Windows, but that problem is also present in the nightlies.

@aaronj0
aaronj0 force-pushed the cppinterop-upgrade branch 3 times, most recently from 83e29a3 to 523fd79 Compare July 8, 2026 06:01
aaronj0 added 4 commits July 9, 2026 14:51
The latest CppInterOp upgrade introduces opaque-handle structs Cpp::ObjectRef, Cpp::DeclRef, and Cpp::InterpRef (CppInterOpTypes.h) to replace void*/typedef pointer arguments.
The latest CppInterOp upgrade changes UseExternalInterpreter to also
install a CppInteropDiagConsumer onto Cling's DiagnosticsEngine.
Rootcling later wraps the current diag client with CheckModuleBuildClient
via DiagnosticsEngine::setClient which deletes CppInterOp's previously-owned
client. This leads to CheckModuleBuildClient holding a dangling fChild pointer.

Without this patch, cling::Interpreter::ShutDown crashes. Since rootcling does
not use CppInterOp, we can avoid registering the interpreter with CppInterOp if
we are running in rootcling.
@aaronj0
aaronj0 force-pushed the cppinterop-upgrade branch from 523fd79 to 11a13bb Compare July 9, 2026 12:54

@vgvassilev vgvassilev left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Lgtm!

@aaronj0
aaronj0 merged commit 2ac0fa2 into root-project:master Jul 10, 2026
56 of 61 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

clean build Ask CI to do non-incremental build on PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants