Home | History | Annotate | Download | only in AST

Lines Matching defs:Canonical

446   const Decl *Canonical = D->getCanonicalDecl();
448 ParsedComments.find(Canonical);
451 if (Canonical != D) {
542 ParsedComments[Canonical] = FC;
589 // Check if we already have a canonical template template parameter.
593 CanonicalTemplateTemplateParm *Canonical
595 if (Canonical)
596 return Canonical->getParam();
598 // Build a canonical template parameter list.
667 Canonical = CanonTemplateTemplateParms.FindNodeOrInsertPos(ID, InsertPos);
668 assert(!Canonical && "Shouldn't be in the map!");
669 (void)Canonical;
671 // Create the canonical template template parameter entry.
672 Canonical = new (*this) CanonicalTemplateTemplateParm(CanonTTP);
673 CanonTemplateTemplateParms.InsertNode(Canonical, InsertPos);
2039 // If the base type is not canonical, make the appropriate canonical type.
2205 // If the pointee type isn't canonical, this won't be a canonical type either,
2206 // so fill in the canonical type field.
2207 QualType Canonical;
2209 Canonical = getComplexType(getCanonicalType(T));
2215 ComplexType *New = new (*this, TypeAlignment) ComplexType(T, Canonical);
2233 // If the pointee type isn't canonical, this won't be a canonical type either,
2234 // so fill in the canonical type field.
2235 QualType Canonical;
2237 Canonical = getPointerType(getCanonicalType(T));
2243 PointerType *New = new (*this, TypeAlignment) PointerType(T, Canonical);
2257 QualType Canonical = getCanonicalType(New);
2264 AdjustedType(Type::Adjusted, Orig, New, Canonical);
2297 QualType Canonical = getCanonicalType(Decayed);
2303 AT = new (*this, TypeAlignment) DecayedType(T, Decayed, Canonical);
2323 // If the block pointee type isn't canonical, this won't be a canonical
2324 // type either so fill in the canonical type field.
2325 QualType Canonical;
2327 Canonical = getBlockPointerType(getCanonicalType(T));
2335 = new (*this, TypeAlignment) BlockPointerType(T, Canonical);
2360 // If the referencee type isn't canonical, this won't be a canonical type
2361 // either, so fill in the canonical type field.
2362 QualType Canonical;
2365 Canonical = getLValueReferenceType(getCanonicalType(PointeeType));
2374 = new (*this, TypeAlignment) LValueReferenceType(T, Canonical,
2397 // If the referencee type isn't canonical, this won't be a canonical type
2398 // either, so fill in the canonical type field.
2399 QualType Canonical;
2402 Canonical = getRValueReferenceType(getCanonicalType(PointeeType));
2411 = new (*this, TypeAlignment) RValueReferenceType(T, Canonical);
2430 // If the pointee or class type isn't canonical, this won't be a canonical
2431 // type either, so fill in the canonical type field.
2432 QualType Canonical;
2434 Canonical = getMemberPointerType(getCanonicalType(T),getCanonicalType(Cls));
2442 = new (*this, TypeAlignment) MemberPointerType(T, Cls, Canonical);
2458 // Convert the array size into a canonical width matching the pointer size for
2472 // If the element type isn't canonical or has qualifiers, this won't
2473 // be a canonical type either, so fill in the canonical type field.
2510 llvm_unreachable("didn't desugar past all non-canonical types?");
2680 // also build a canonical type.
2734 // If the element type isn't canonical, this won't be a canonical type
2735 // either, so fill in the canonical type field. We also have to pull
2773 // If the element type isn't canonical, this won't be a canonical type either,
2774 // so fill in the canonical type field.
2775 QualType Canonical;
2777 Canonical = getVectorType(getCanonicalType(vecType), NumElts, VecKind);
2784 VectorType(vecType, NumElts, Canonical, VecKind);
2804 // If the element type isn't canonical, this won't be a canonical type either,
2805 // so fill in the canonical type field.
2806 QualType Canonical;
2808 Canonical = getExtVectorType(getCanonicalType(vecType), NumElts);
2815 ExtVectorType(vecType, NumElts, Canonical);
2834 // We already have a canonical version of this array type; use it as
2835 // the canonical type for a newly-built type.
2848 assert(!CanonCheck && "Dependent-sized ext_vector canonical type broken");
2880 QualType Canonical;
2882 Canonical = getFunctionNoProtoType(getCanonicalType(ResultTy), Info);
2892 FunctionNoProtoType(ResultTy, Canonical, newInfo);
2898 /// \brief Determine whether \p T is canonical as the result type of a function.
2921 // Determine whether the type being created is already canonical or not.
2929 // If this type isn't canonical, get the canonical version of it.
2930 // The exception spec is not part of the canonical type.
2931 QualType Canonical;
2950 Canonical = getFunctionType(CanResultTy, CanonicalArgs, CanonicalEPI);
2982 new (FTP) FunctionProtoType(ResultTy, ArgArray, Canonical, newEPI);
3055 QualType Canonical) const {
3058 if (Canonical.isNull())
3059 Canonical = getCanonicalType(Decl->getUnderlyingType());
3061 TypedefType(Type::Typedef, Decl, Canonical);
3119 && "replacement types must always be canonical");
3144 assert(P.getAsType().isCanonical() && "Pack contains non-canonical type");
3192 assert(!TypeCheck && "Template type parameter canonical type broken");
3281 // Allocate the (non-canonical) template specialization type, but don't
3307 // Build the canonical template specialization type.
3314 // Determine whether this canonical template specialization type already
3325 // Allocate a new canonical template specialization type.
3337 "Non-dependent template-id type must have a canonical type");
3357 assert(!CheckT && "Elaborated canonical type broken");
3381 assert(!CheckT && "Paren canonical type broken");
3504 // The canonical type might not contain an unexpanded parameter pack, if it
3575 // Build the canonical type, which has the canonical base type and
3577 QualType Canonical;
3586 Canonical = getObjCObjectType(getCanonicalType(BaseType),
3589 Canonical = getObjCObjectType(getCanonicalType(BaseType),
3601 new (Mem) ObjCObjectTypeImpl(Canonical, BaseType, Protocols, NumProtocols);
3685 // Find the canonical object type.
3686 QualType Canonical;
3688 Canonical = getObjCObjectPointerType(getCanonicalType(ObjectT));
3697 new (Mem) ObjCObjectPointerType(Canonical, ObjectT);
3732 /// on canonical type's (which are always unique).
3743 // We already have a "canonical" version of an identical, dependent
3744 // typeof(expr) type. Use that as our canonical type.
3748 // Build a new, canonical typeof(expr) type.
3755 QualType Canonical = getCanonicalType(tofExpr->getType());
3756 toe = new (*this, TypeAlignment) TypeOfExprType(tofExpr, Canonical);
3766 /// on canonical types (which are always unique).
3768 QualType Canonical = getCanonicalType(tofType);
3769 TypeOfType *tot = new (*this, TypeAlignment) TypeOfType(tofType, Canonical);
3794 // Build a new, canonical typeof(expr) type.
3824 /// deduced to the given type, or to the canonical undeduced 'auto' type, or the
3825 /// canonical deduced-but-dependent 'auto' type.
3859 // If the atomic value type isn't canonical, this won't be a canonical type
3860 // either, so fill in the canonical type field.
3861 QualType Canonical;
3863 Canonical = getAtomicType(getCanonicalType(T));
3869 AtomicType *New = new (*this, TypeAlignment) AtomicType(T, Canonical);
4132 // The canonical template name is the canonical template declaration.
4236 // A namespace is canonical; build a nested-name-specifier with
4242 // A namespace is canonical; build a nested-name-specifier with
4254 // as the canonical nested-name-specifier. This is required to canonicalize
4272 // The global specifier and __super specifer are canonical and unique.
4365 /// handling typedefs etc. The canonical type of "T" must be an array type,
7209 // If the canonical type classes don't match.
7230 // The canonical type classes match.
7238 llvm_unreachable("Non-canonical and dependent types shouldn't get here");