build: fix P2582R1 detection in GCC compatibility check #2659
+4
−4
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The current P2582R1 support detection fails with GCC 14.2.0 (Ubuntu) and 14.2.1 (Fedora) because these compilers don't properly handle parameter packs during argument deduction, which is a key part of P2582R1.
Update CheckP2582R1.cmake to use a constructor with parameter packs in its test case, which more accurately reflects P2582R1's requirements. This allows the check to correctly identify incomplete P2582R1 support in:
The previous test was producing false positives, leading to build failures in the RPC tests where tuple argument deduction was attempted.
For the build failure with GCC (Ubuntu 14.2.0-4ubuntu2) packaged for Ubuntu:Oracular:
Refs #2445