-
Notifications
You must be signed in to change notification settings - Fork 1.4k
[metacling] Use InterOps JitCall for default object construction #18546
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Test Results 20 files 20 suites 3d 5h 10m 27s ⏱️ Results for commit 195a654. ♻️ This comment has been updated with latest results. |
1234a90
to
0ffa579
Compare
80b6267
to
a6104c6
Compare
@smuzaffar we believe these changes would benefit from a CMSSW CI run, could you help us with that? |
@vepadulano , cmssw ci tests are running via cms-sw#225 |
Hi @smuzaffar @vepadulano, Aaron and me can't see the build logs behind the CMS login. Can one of you CMS guys please check the logs and see if the failures are related, copy-pasting relevant error messages if there are any? Thanks! |
cmssw CI tests look good. The unit tests failure are not due to this change. cms-sw/cmssw#48393 should fix those tests (#19096 : Root's removal of deprecated _TDirectory_getattr pythonization) |
@smuzaffar can we give another try of this pr in cmssw? |
4298e72
to
2839d14
Compare
restarted cmssw ci tests |
Adds various upstreamed developments: compiler-research/CppInterOp#650 streamlines the logic in Cpp::Construct to be more generic. compiler-research/CppInterOp#643 by @hageboeck making CppInterOp work with new gtest target names Fixed wrapper name conflicts with ROOT that also uses `__cf`, allowing us to integrate JitCall incrementally and co-exist with CallFunc Fixes related to the cppyy forks Unrelated work on Emscripten and WebAssembly
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Lgtm!
This PR drops the constructor wrapper generation for default ctors in CallFunc (
TClingCallFunc::ExecDefaultConstructor
) and now uses CppInterOps JitCall facility. This move improves the generated wrappers, provides a safe interface for construction, gives us better diagnostics and is a well-tested interface (SeeCpp::Construct
) that can eventually be upstreamed to LLVM