Skip to content

GPU: make std::is_pointer address-space aware on Metal - #15962

Merged
ktf merged 1 commit into
AliceO2Group:devfrom
ktf:pr15962
Oct 15, 2026
Merged

ktf merged 1 commit into
AliceO2Group:devfrom
ktf:pr15962

Conversation

@ktf

@ktf ktf commented Oct 14, 2026

Copy link
Copy Markdown
Member

The shim's partial specialization on a bare T* does match a pointer type written
out in full, but not one deduced from an argument, which carries its address
space. RDHUtils uses std::is_pointer to keep its pointer overloads apart from
its reference ones, so the reference template was instantiated for a pointer and
dereferenced it as a struct.

metal::is_pointer is address-space aware, so the Metal branch forwards to it.

The shim's partial specialization on a bare T* does match a pointer type written
out in full, but not one deduced from an argument, which carries its address
space. RDHUtils uses std::is_pointer to keep its pointer overloads apart from
its reference ones, so the reference template was instantiated for a pointer and
dereferenced it as a struct.

metal::is_pointer is address-space aware, so the Metal branch forwards to it.
@ktf
ktf requested a review from davidrohr as a code owner October 14, 2026 20:45
@ktf
ktf merged commit 45693c5 into AliceO2Group:dev Oct 15, 2026
10 of 12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants