Index: lib/Sema/SemaOverload.cpp =================================================================== --- lib/Sema/SemaOverload.cpp +++ lib/Sema/SemaOverload.cpp @@ -4752,10 +4752,7 @@ InitializedEntity::InitializeParameter(S.Context, ToType, /*Consumed=*/false); if (S.CanPerformCopyInitialization(Entity, From)) { - Result.setStandard(); - Result.Standard.setAsIdentityConversion(); - Result.Standard.setFromType(ToType); - Result.Standard.setAllToTypes(ToType); + Result.setAsIdentityConversion(ToType); return Result; } } @@ -4805,10 +4802,7 @@ // For an empty list, we won't have computed any conversion sequence. // Introduce the identity conversion sequence. if (From->getNumInits() == 0) { - Result.setStandard(); - Result.Standard.setAsIdentityConversion(); - Result.Standard.setFromType(ToType); - Result.Standard.setAllToTypes(ToType); + Result.setAsIdentityConversion(ToType); } Result.setStdInitializerListElement(toStdInitializerList); @@ -4946,10 +4940,7 @@ // - if the initializer list has no elements, the implicit conversion // sequence is the identity conversion. else if (NumInits == 0) { - Result.setStandard(); - Result.Standard.setAsIdentityConversion(); - Result.Standard.setFromType(ToType); - Result.Standard.setAllToTypes(ToType); + Result.setAsIdentityConversion(ToType); } return Result; }