Skip to content

Revamp enable_if constraints in all env overloads #8033

Closed

Description

@gonidelis

It has been frequently discussed throughout the PRs that add environment overloads that we make our enable_if constrains more uniform to:

a) reduce pronity to unforeseen ambiguity errors
b) make code more readable
c) avoid potential compiler oversights

Μany enable_if constraints are unnecessarily complex. The parameter type differences alone (KeyT* vs void*, concrete iterator vs size_t&) are enough for disambiguation, the is_integral_v<NumItemsT> guard is redundant in most cases.

Instances of these discussions:

#7969 (comment)
#7999 (comment)
#7908 (comment)
#7794 (comment)
#5335 (comment)
#7970 (comment)
#7907 (comment)
#7965 (comment)
#7798 (comment)
#7967 (comment)

@bernhardmgruber and @miscco have been heavily involved in this discussions in many of their reviews.

Close this PR by verifying that all enable_if in all env overloads work as expected, create no ambiguities and use no buggy traits.

This issue should be closed, after all env PRs are merged.

Activity

  1. self-assigned this
    on Mar 13, 2026
  2. bernhardmgruber commented on Mar 13, 2026

    @bernhardmgruber
    Contributor

    @miscco agreed to help us here as well!

  3. gonidelis commented on Mar 13, 2026

    @gonidelis
    MemberAuthor

    @miscco agreed to help us here as well!

    I always love me some Michael help

  4. gonidelis commented on Jun 4, 2026

    @gonidelis
    MemberAuthor

    closed as part of #8175

  5. moved this from Todo to Done in CCCLon Jun 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

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