Lines Matching refs:Standard
177 /// StandardConversionSequence - Set the standard conversion
195 /// getRank - Retrieve the rank of this standard conversion sequence
211 /// used as part of the ranking of standard conversion sequences
231 /// used as part of the ranking of standard conversion sequences (C++
275 /// Check if this standard conversion sequence represents a narrowing
279 /// \param Converted The result of applying this standard conversion sequence.
433 /// dump - Print this standard conversion sequence to standard
472 /// dump - Print this user-defined conversion sequence to standard
490 /// dump - Print this implicit conversion sequence to standard
498 OS << "Standard conversion: ";
499 Standard.dump();
1124 /// Produces an implicit conversion sequence for when a standard conversion
1169 // Turn this into a "standard" conversion sequence, so that it
1170 // gets ranked with standard conversion sequences.
1172 ICS.Standard.setAsIdentityConversion();
1173 ICS.Standard.setFromType(From->getType());
1174 ICS.Standard.setAllToTypes(ToType);
1175 ICS.Standard.CopyConstructor = Constructor;
1177 ICS.Standard.Second = ICK_Derived_To_Base;
1210 /// describe the initialization of f from i, which will be a standard
1238 ICS.Standard, CStyle, AllowObjCWritebackConversion)){
1260 ICS.Standard.setAsIdentityConversion();
1261 ICS.Standard.setFromType(FromType);
1262 ICS.Standard.setAllToTypes(ToType);
1268 ICS.Standard.CopyConstructor = nullptr;
1272 ICS.Standard.Second = ICK_Derived_To_Base;
1431 /// IsStandardConversion - Determines whether there is a standard
1433 /// expression From to the type ToType. Standard conversion sequences
1436 /// contain the standard conversion sequence required to perform this
1446 // Standard conversions (C++ [conv])
1452 // There are no standard conversions for class types in C++, so
1480 // otherwise, only a boolean conversion is standard
1667 // tryAtomicConversion has updated the standard conversion sequence
3024 // Record the standard conversion we used and the conversion function.
3206 // Record the standard conversion we used and the conversion function.
3211 // constructor (12.3.1), the initial standard conversion
3223 User.Before = Best->Conversions[0].Standard;
3240 // conversion function (12.3.2), the initial standard
3243 User.Before = Best->Conversions[0].Standard;
3250 // The second standard conversion sequence converts the
3332 return (ICS.isStandard() && ICS.Standard.DeprecatedStringLiteralToCharPtr) ||
3347 // -- a standard conversion sequence (13.3.3.1.1) is a better
3364 // standard. For example:
3419 // Standard conversion sequence S1 is a better conversion sequence than
3420 // standard conversion sequence S2 if [...]
3422 ICS1.Standard, ICS2.Standard);
3427 // constructor and if the second standard conversion sequence of
3428 // U1 is better than the second standard conversion sequence of
3454 // Per 13.3.3.2p3, compare the given standard conversion sequences to
3513 // time of this writing) break the standard definition of std::forward
3526 /// CompareStandardConversionSequences - Compare two standard
3534 // Standard conversion sequence S1 is a better conversion sequence
3535 // than standard conversion sequence S2 if (C++ 13.3.3.2p3):
3689 // as clang will do in standard mode.
3699 /// CompareQualificationConversions - Compares two standard conversion
3716 // FIXME: the example in the standard doesn't use a qualification
3790 // Check that the winning standard conversion sequence isn't using
3810 /// CompareDerivedToBaseConversions - Compares two standard conversion
4189 // second standard conversion sequence either an identity
4197 ICS.UserDefined.Before = Best->Conversions[0].Standard;
4283 ICS.Standard.First = ICK_Identity;
4284 ICS.Standard.Second = DerivedToBase? ICK_Derived_To_Base
4287 ICS.Standard.Third = ICK_Identity;
4288 ICS.Standard.FromTypePtr = T2.getAsOpaquePtr();
4289 ICS.Standard.setToType(0, T2);
4290 ICS.Standard.setToType(1, T1);
4291 ICS.Standard.setToType(2, T1);
4292 ICS.Standard.ReferenceBinding = true;
4293 ICS.Standard.DirectBinding = true;
4294 ICS.Standard.IsLvalueReference = !isRValRef;
4295 ICS.Standard.BindsToFunctionLvalue = T2->isFunctionType();
4296 ICS.Standard.BindsToRvalue = false;
4297 ICS.Standard.BindsImplicitObjectArgumentWithoutRefQualifier = false;
4298 ICS.Standard.ObjCLifetimeConversionBinding = ObjCLifetimeConversion;
4299 ICS.Standard.CopyConstructor = nullptr;
4300 ICS.Standard.DeprecatedStringLiteralToCharPtr = false;
4341 ICS.Standard.First = ICK_Identity;
4342 ICS.Standard.Second = DerivedToBase? ICK_Derived_To_Base
4345 ICS.Standard.Third = ICK_Identity;
4346 ICS.Standard.FromTypePtr = T2.getAsOpaquePtr();
4347 ICS.Standard.setToType(0, T2);
4348 ICS.Standard.setToType(1, T1);
4349 ICS.Standard.setToType(2, T1);
4350 ICS.Standard.ReferenceBinding = true;
4355 // standard library implementors; therefore, we need the xvalue check here.
4356 ICS.Standard.DirectBinding =
4359 ICS.Standard.IsLvalueReference = !isRValRef;
4360 ICS.Standard.BindsToFunctionLvalue = T2->isFunctionType();
4361 ICS.Standard.BindsToRvalue = InitCategory.isRValue();
4362 ICS.Standard.BindsImplicitObjectArgumentWithoutRefQualifier = false;
4363 ICS.Standard.ObjCLifetimeConversionBinding = ObjCLifetimeConversion;
4364 ICS.Standard.CopyConstructor = nullptr;
4365 ICS.Standard.DeprecatedStringLiteralToCharPtr = false;
4385 // and the second standard conversion sequence of the
4458 ICS.Standard.ReferenceBinding = true;
4459 ICS.Standard.IsLvalueReference = !isRValRef;
4460 ICS.Standard.BindsToFunctionLvalue = false;
4461 ICS.Standard.BindsToRvalue = true;
4462 ICS.Standard.BindsImplicitObjectArgumentWithoutRefQualifier = false;
4463 ICS.Standard.ObjCLifetimeConversionBinding = false;
4471 // standard conversion sequence cannot be formed if it requires [...]
4549 Result.Standard.setAsIdentityConversion();
4550 Result.Standard.setFromType(ToType);
4551 Result.Standard.setAllToTypes(ToType);
4602 Result.Standard.setAsIdentityConversion();
4603 Result.Standard.setFromType(ToType);
4604 Result.Standard.setAllToTypes(ToType);
4658 // The standard is notoriously unclear here, since 13.3.3.1.4 doesn't
4709 StandardConversionSequence &SCS = Result.isStandard() ? Result.Standard :
4740 Result.Standard.setAsIdentityConversion();
4741 Result.Standard.setFromType(ToType);
4742 Result.Standard.setAllToTypes(ToType);
4895 ICS.Standard.setAsIdentityConversion();
4896 ICS.Standard.Second = SecondKind;
4897 ICS.Standard.setFromType(FromType);
4898 ICS.Standard.setAllToTypes(ImplicitParamType);
4899 ICS.Standard.ReferenceBinding = true;
4900 ICS.Standard.DirectBinding = true;
4901 ICS.Standard.IsLvalueReference = Method->getRefQualifier() != RQ_RValue;
4902 ICS.Standard.BindsToFunctionLvalue = false;
4903 ICS.Standard.BindsToRvalue = FromClassification.isRValue();
4904 ICS.Standard.BindsImplicitObjectArgumentWithoutRefQualifier
4958 if (ICS.Standard.Second == ICK_Derived_To_Base) {
5093 SCS = &ICS.Standard;
5205 /// dropPointerConversions - If the given standard conversion sequence
5244 dropPointerConversion(ICS.Standard);
6458 Candidate.FinalConversion = ICS.Standard;
6462 // conversion function template, the second standard conversion sequence
6465 GetConversionRank(ICS.Standard.Second) != ICR_Exact_Match) {
6473 // the second standard conversion sequence of the user-defined
6477 ICS.Standard.First == ICK_Lvalue_To_Rvalue) {
6491 "Can only end up with a standard conversion sequence or failure");
6585 // first conversion is ObjectInit's standard conversion (which is
6588 Candidate.Conversions[0].UserDefined.Before = ObjectInit.Standard;
7138 /// operator overloads from the standard to a candidate set.
8534 // (see 8.5, 13.3.1.5) and the standard conversion sequence
8537 // conversion sequence than the standard conversion sequence
8543 // other. This only distinguishes the results in non-standard, extension
11490 // a hack. The standard requires that we do overload resolution between the