Author: Douglas Date: 2025-08-06T10:25:59-07:00 New Revision: ec138c7fa71d8b6d3894bc6d1c384a4cc3fa506e
URL: https://github.com/llvm/llvm-project/commit/ec138c7fa71d8b6d3894bc6d1c384a4cc3fa506e DIFF: https://github.com/llvm/llvm-project/commit/ec138c7fa71d8b6d3894bc6d1c384a4cc3fa506e.diff LOG: [OpenACC] Improve C++20 compatibility of private/firstprivate test (#152233) Under C++17, `DeletedCopy` and `DefaultedCopy` in the test `clang/test/SemaOpenACC/private_firstprivate_reduction_required_ops.cpp` are eligible for aggregate initialization. Under C++20 and up, that is no longer the case. Therefore, an explicit constructor must be declared to avoid additional diagnostics which the test does not expect. This test was failing in our downstream testing where our toolchain uses C++20 as the default dialect. See this reduced example for more details: https://godbolt.org/z/46oErYT43 Added: Modified: clang/test/SemaOpenACC/private_firstprivate_reduction_required_ops.cpp Removed: ################################################################################ diff --git a/clang/test/SemaOpenACC/private_firstprivate_reduction_required_ops.cpp b/clang/test/SemaOpenACC/private_firstprivate_reduction_required_ops.cpp index 4644bdeeacc0e..ce941ad4255da 100644 --- a/clang/test/SemaOpenACC/private_firstprivate_reduction_required_ops.cpp +++ b/clang/test/SemaOpenACC/private_firstprivate_reduction_required_ops.cpp @@ -37,10 +37,12 @@ struct ImplicitDelDtor { }; struct DeletedCopy { + DeletedCopy(); DeletedCopy(const DeletedCopy&) = delete; }; struct DefaultedCopy { + DefaultedCopy(); DefaultedCopy(const DefaultedCopy&) = default; }; struct UserCopy { _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits