Skip to content

[BUG/FEA]: cuda::compute_capability is not a structural type #8730

@bernhardmgruber

Description

@bernhardmgruber

We cannot pass cuda::compute_capability as a template parameter in C+++20 because the type is not a structural type. This is unfortunate, because that type is conceptually a strongly typed int. The only thing preventing it from being structural is that the int __cc_; data member is private.

I propose to make the data member public. Given the prefix __ it is still an implementation detail from a user's perspective. This is also what std::array does, which has a public member array that is an implementation detail.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

Status

Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions