Lines Matching full:qualifiers
1021 // cv-qualifiers (if any) and ref-qualifier (if any) on the function itself.
1057 NewQuals |= Qualifiers::Const;
1060 OldQuals &= ~Qualifiers::Restrict;
1061 NewQuals &= ~Qualifiers::Restrict;
1532 // just strip the qualifiers because they don't matter.
1962 /// same type qualifiers as FromPtr has on its pointee type. ToType,
1964 /// the right set of qualifiers on its pointee.
1982 Qualifiers Quals = CanonFromPointee.getQualifiers();
1993 // Build a pointer to ToPointee. It has the right qualifiers
2000 // Just build a canonical type that has the right qualifiers.
2027 /// might differ from ToType in its cv-qualifiers at some level) into
2174 /// \brief Adopt the given qualifiers for the given type.
2175 static QualType AdoptQualifiers(ASTContext &Context, QualType T, Qualifiers Qs){
2176 Qualifiers TQs = T.getQualifiers();
2178 // Check whether qualifiers already match.
2197 // The set of qualifiers on the type we're converting from.
2198 Qualifiers FromQualifiers = FromType.getQualifiers();
2377 // Parameter must be a pointer to __autoreleasing (with no other qualifiers).
2384 Qualifiers ToQuals = ToPointee.getQualifiers();
2386 ToQuals.getObjCLifetime() != Qualifiers::OCL_Autoreleasing ||
2397 Qualifiers FromQuals = FromPointee.getQualifiers();
2399 (FromQuals.getObjCLifetime() != Qualifiers::OCL_Strong &&
2400 FromQuals.getObjCLifetime() != Qualifiers::OCL_Weak))
2403 // Make sure that we have compatible qualifiers.
2404 FromQuals.setObjCLifetime(Qualifiers::OCL_Autoreleasing);
2408 // Remove qualifiers from the pointee type we're converting from; they
2410 // qualifiers (with __autoreleasing) if the compatibility check succeeds.
2734 /// ToType in its cv-qualifiers at some level) into ConvertedType.
2838 /// qualifiers sets is nontrivial.
2839 static bool isNonTrivialObjCLifetimeConversion(Qualifiers FromQuals,
2840 Qualifiers ToQuals) {
2843 ToQuals.getObjCLifetime() == Qualifiers::OCL_ExplicitNone)
2869 // A conversion can add cv-qualifiers at levels other than the first
2874 // Within each iteration of the loop, we check the qualifiers to
2882 Qualifiers FromQuals = FromType.getQualifiers();
2883 Qualifiers ToQuals = ToType.getQualifiers();
2896 // Objective-C lifetime qualifiers.
2919 // Keep track of whether all prior cv-qualifiers in the "to" type
2929 // qualifiers above), then this is a qualification conversion.
3446 Qualifiers Quals;
3645 // top-level cv-qualifiers, and the type to which the reference
3652 Qualifiers T1Quals, T2Quals;
3665 // If the type is an array type, promote the element qualifiers to the
3722 Qualifiers T1Quals, T2Quals;
3731 // If the type is an array type, promote the element qualifiers to the type
3752 // Within each iteration of the loop, we check the qualifiers to
3759 // strict subset of qualifiers.
3761 // The qualifiers are the same, so this doesn't tell us anything
3765 // T1 has fewer qualifiers, so it could be the better sequence.
3767 // Neither has qualifiers that are a subset of the other's
3768 // qualifiers.
3773 // T2 has fewer qualifiers, so it could be the better sequence.
3775 // Neither has qualifiers that are a subset of the other's
3776 // qualifiers.
3781 // Qualifiers are disjoint.
4037 Qualifiers T1Quals, T2Quals;
4064 // If the type is an array type, promote the element qualifiers to the type
4080 // qualifiers when performing these computations, so that e.g., an int in
4412 // Note that we only want to check address spaces and cvr-qualifiers here.
4413 // ObjC GC and lifetime qualifiers aren't important.
4414 Qualifiers T1Quals = T1.getQualifiers();
4415 Qualifiers T2Quals = T2.getQualifiers();
4808 Qualifiers::Const | Qualifiers::Volatile : Method->getTypeQualifiers();
4844 // First check the qualifiers.
4875 if (!FromClassification.isLValue() && Quals != Qualifiers::Const) {
4939 Qualifiers FromQs = FromRecordType.getQualifiers();
4940 Qualifiers ToQs = DestType.getQualifiers();
6816 const Qualifiers &VisibleQuals);
6834 const Qualifiers &VisibleTypeConversionsQuals);
6872 /// FIXME: what to do about extended qualifiers?
6875 const Qualifiers &VisibleQuals) {
6904 for (unsigned CVR = BaseCVR+1; CVR <= Qualifiers::CVRMask; ++CVR) {
6907 if ((CVR & Qualifiers::Volatile) && !hasVolatile) continue;
6911 if ((CVR & Qualifiers::Restrict) &&
6941 /// FIXME: what to do about extended qualifiers?
6962 // qualifiers.
6964 for (unsigned CVR = BaseCVR+1; CVR <= Qualifiers::CVRMask; ++CVR) {
6988 const Qualifiers &VisibleQuals) {
7001 // Otherwise, we don't care about qualifiers on the type.
7082 /// CollectVRQualifiers - This routine returns Volatile/Restrict qualifiers,
7084 static Qualifiers CollectVRQualifiers(ASTContext &Context, Expr* ArgExpr) {
7085 Qualifiers VRQuals;
7110 // Need to go down the pointer/mempointer chain and add qualifiers
7143 Qualifiers VisibleTypeConversionsQuals;
7288 S.Context.getCVRQualifiedType(CandidateTy, Qualifiers::Restrict));
7298 (Qualifiers::Volatile |
7299 Qualifiers::Restrict)));
7312 Qualifiers VisibleTypeConversionsQuals,
7400 // For every function type T that does not have cv-qualifiers or a
7866 (Qualifiers::Volatile |
7867 Qualifiers::Restrict)));
7915 Qualifiers::Volatile |
7916 Qualifiers::Restrict)));
8213 Qualifiers VisibleTypeConversionsQuals;
8997 Qualifiers FromQs = CFromTy.getQualifiers();
8998 Qualifiers ToQs = CToTy.getQualifiers();
9034 assert(CVR && "unexpected qualifiers mismatch");
9130 Qualifiers FromQs = CFromTy.getQualifiers();
9131 Qualifiers ToQs = CToTy.getQualifiers();
9277 assert(ParamD && "no parameter found for bad qualifiers deduction result");
9283 // qualified version of ParamD, so move the qualifiers to that.
11908 Qualifiers funcQuals = Qualifiers::fromCVRMask(proto->getTypeQuals());
11913 Qualifiers objectQuals = objectType.getQualifiers();
11915 Qualifiers difference = objectQuals - funcQuals;