================ @@ -6714,7 +6714,8 @@ void InitializationSequence::InitializeFrom(Sema &S, OverloadCandidateSet::iterator Best; OverloadingResult OR = getFailedCandidateSet().BestViableFunction( S, Kind.getLocation(), Best); - if (OR != OverloadingResult::OR_Deleted) { + if (OR != OverloadingResult::OR_Deleted && + Kind.getKind() == InitializationKind::IK_Direct) { ---------------- cor3ntin wrote:
Presumably, this is https://eel.is/c++draft/dcl.init.general#16.6.2.sentence-1 Why do you think copy should not be valid here? Afaik, the core issue @frederick-vs-ja mentioned here, https://github.com/llvm/llvm-project/issues/88089#issuecomment-2044223386, only applies to the array case. https://github.com/llvm/llvm-project/pull/131320 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits