Skip to content

Check mrbind#38 (forwarding-lambda member binding) is Clang/GCC compatible#6273

Closed
Fedr wants to merge 2 commits into
masterfrom
mrbind-38-clang-compat
Closed

Check mrbind#38 (forwarding-lambda member binding) is Clang/GCC compatible#6273
Fedr wants to merge 2 commits into
masterfrom
mrbind-38-clang-compat

Conversation

@Fedr

@Fedr Fedr commented Jun 16, 2026

Copy link
Copy Markdown
Contributor

Purpose

Verify that mrbind#38 — which changes pybind member-function binding from a static_casted pointer-to-member to a forwarding lambda — does not regress the existing Clang / GCC Python-binding builds.

mrbind#38 fixes MSVC C2440 on overloaded, auto-returning members of class templates (e.g. MR::Buffer<T,I>::data()); upstream MSVC bug: https://developercommunity.visualstudio.com/t/C2440:-static_cast-to-select-an-overload/11107969 . Since the change touches all member-function bindings (not just the failing ones), this PR runs the full matrix to make sure the previously-working Clang/GCC paths still build and pass.

What's in it

Not for merge as-is

This pins a mrbind PR-branch commit. Once mrbind#38 merges to mrbind master, the real submodule bump should point at the merged master commit. This PR is a CI compatibility check.

Fedr and others added 2 commits June 16, 2026 17:08
…nding change

mrbind#38 changes pybind member functions to bind via a forwarding lambda instead of a
static_cast'd pointer-to-member (fixes MSVC C2440 on overloaded auto-returning members of
class templates). This PR bumps only the submodule and runs the full matrix to confirm the
change does not regress the existing Clang/GCC Python-binding builds. No MSVC-bindings
wiring here -- that lives in the separate prototype PR.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Picks up the mrbind fix for calling template member functions through their full name
(with template args), which regressed the Clang bindings build with the first #38 revision.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@Fedr

Fedr commented Jun 16, 2026

Copy link
Copy Markdown
Contributor Author

Full matrix is green — this confirms mrbind#38 (forwarding-lambda member binding + full-name template-member calls) does not regress the Clang/GCC Python-binding builds.

Closing: this was a CI compatibility check, not for merge (it pinned a mrbind PR-branch commit). The mrbind#38 change will land via the normal thirdparty/mrbind submodule bump once it merges to mrbind master.

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