Skip to content

[CPyCppyy] Add back the (U)Long64_t converters and executors#20895

Merged
guitargeek merged 2 commits intoroot-project:masterfrom
guitargeek:issue-15872
Jan 15, 2026
Merged

[CPyCppyy] Add back the (U)Long64_t converters and executors#20895
guitargeek merged 2 commits intoroot-project:masterfrom
guitargeek:issue-15872

Conversation

@guitargeek
Copy link
Contributor

We always need the (U)Long64_t converters and executors when cppyy is
based on an unpatched ROOT, because the "long long" types are always
converted to Long64_t and ULong64_t already at the ROOT Meta level.
So this is what cppyy will see even when using long long types.

This partially reverts 8d2a6df.

See #15872 (comment)

Closes #15872.

The change means that we can also run a few more cppyy unit tests on
Windows 64 bits, even though they still need to be marked as xfail
as they still fail for other reasons.

The temporary workaround d8593cb is also reverted, as the reason for std::vector::reserve() not being callable was that it used unsigned long long as the parameter type on Windows 64 bit.

Copy link
Member

@vepadulano vepadulano left a comment

Choose a reason for hiding this comment

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

I agree with the changes, we need them until we move cppyy to using CppInterop. Please merge only once the CI is green.

We always need the `(U)Long64_t` converters and executors when cppyy is
based on an unpatched ROOT, because the "long long" types are always
converted to `Long64_t` and `ULong64_t` already at the ROOT Meta level.
So this is what cppyy will see even when using `long long` types.

This partially reverts 8d2a6df.

See root-project#15872 (comment)

Closes root-project#15872.

The change means that we can also run a few more `cppyy` unit tests on
Windows 64 bits, even though they still need to be marked as `xfail`
as they still fail for other reasons.
@guitargeek guitargeek merged commit 0e70f8d into root-project:master Jan 15, 2026
25 of 29 checks passed
@guitargeek guitargeek deleted the issue-15872 branch January 15, 2026 19:06
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.

[PyROOT] The cppyy version inside ROOT doesn't support long long

2 participants