Lines Matching defs:canonical
737 // Check if we already have a canonical template template parameter.
746 // Build a canonical template parameter list.
814 // Create the canonical template template parameter entry.
3061 // If the base type is not canonical, make the appropriate canonical type.
3405 llvm_unreachable("unexpected non-canonical or dependent type!");
3632 // If the pointee type isn't canonical, this won't be a canonical type either,
3633 // so fill in the canonical type field.
3660 // If the pointee type isn't canonical, this won't be a canonical type either,
3661 // so fill in the canonical type field.
3785 // If the block pointee type isn't canonical, this won't be a canonical
3786 // type either so fill in the canonical type field.
3823 // If the referencee type isn't canonical, this won't be a canonical type
3824 // either, so fill in the canonical type field.
3863 // If the referencee type isn't canonical, this won't be a canonical type
3864 // either, so fill in the canonical type field.
3896 // If the pointee or class type isn't canonical, this won't be a canonical
3897 // type either, so fill in the canonical type field.
3929 // Convert the array size into a canonical width matching the pointer size for
3943 // If the element type isn't canonical or has qualifiers, or the array bound
3944 // is instantiation-dependent, this won't be a canonical type either, so fill
3945 // in the canonical type field.
3983 llvm_unreachable("didn't desugar past all non-canonical types?");
4211 // If the element type isn't canonical, this won't be a canonical type
4212 // either, so fill in the canonical type field. We also have to pull
4446 // If the element type isn't canonical, this won't be a canonical type either,
4447 // so fill in the canonical type field.
4486 "Dependent-sized vector_size canonical type broken");
4519 // If the element type isn't canonical, this won't be a canonical type either,
4520 // so fill in the canonical type field.
4549 // We already have a canonical version of this array type; use it as
4550 // the canonical type for a newly-built type.
4562 assert(!CanonCheck && "Dependent-sized ext_vector canonical type broken");
4629 assert(!CanonCheck && "Dependent-sized matrix canonical type broken");
4635 // Already have a canonical version of the matrix type
4642 // Use Canon as the canonical type for newly-built type.
4684 /// Determine whether \p T is canonical as the result type of a function.
4757 // A noexcept(expr) specification is (possibly) canonical if expr is
4762 // A dynamic exception specification is canonical if it only contains pack
4764 // contained types are canonical.
4800 // noexcept expression, or we're just looking for a canonical type.
4818 // Determine whether the type being created is already canonical or not.
4827 "given non-canonical parameters constructing canonical type");
4829 // If this type isn't canonical, get the canonical version of it if we don't
4831 // canonical type, and only in C++17 onwards.
4880 llvm_unreachable("dependent noexcept is already canonical");
4886 // Adjust the canonical function result type.
4932 // If the pipe element type isn't canonical, this won't be a canonical type
4933 // either, so fill in the canonical type field.
5288 assert(!TypeCheck && "Template type parameter canonical type broken");
5368 // Allocate the (non-canonical) template specialization type, but don't
5388 // Build the canonical template specialization type.
5394 // Determine whether this canonical template specialization type already
5405 // Allocate a new canonical template specialization type.
5417 "Non-dependent template-id type must have a canonical type");
5437 assert(!CheckT && "Elaborated canonical type broken");
5465 assert(!CheckT && "Paren canonical type broken");
5562 assert(!Nothing && "canonical type broken");
5725 // Build the canonical type, which has the canonical base type and a
5728 QualType canonical;
5733 // Determine the canonical type arguments.
5755 canonical = getObjCObjectType(getCanonicalType(baseType), canonTypeArgs,
5767 new (mem) ObjCObjectTypeImpl(canonical, baseType, typeArgs, protocols,
5776 /// If this is for the canonical type of a type parameter, we can apply
5819 // If the canonical type is ObjCObjectType, ...
5968 // Find the canonical object type.
6016 /// on canonical type's (which are always unique).
6028 // We already have a "canonical" version of an identical, dependent
6029 // typeof(expr) type. Use that as our canonical type.
6033 // Build a new, canonical typeof(expr) type.
6052 /// on canonical types (which are always unique).
6103 // Build a new, canonical decltype(expr) type.
6169 // Build a new, canonical __underlying_type(type) type.
6217 assert(!Nothing && "canonical type broken");
6237 /// deduced to the given type, or to the canonical undeduced 'auto' type, or the
6238 /// canonical deduced-but-dependent 'auto' type.
6273 /// which has been deduced to the given type, or to the canonical undeduced
6274 /// such type, or the canonical deduced-but-dependent such type.
6308 // If the atomic value type isn't canonical, this won't be a canonical type
6309 // either, so fill in the canonical type field.
6688 // The canonical template name is the canonical template declaration.
7248 // A namespace is canonical; build a nested-name-specifier with
7254 // A namespace is canonical; build a nested-name-specifier with
7268 // as the canonical nested-name-specifier. This is required to canonicalize
7285 // The global specifier and __super specifer are canonical and unique.
7379 /// handling typedefs etc. The canonical type of "T" must be an array type,
11083 // If the canonical type classes don't match.
11113 // The canonical type classes match.
11121 llvm_unreachable("Non-canonical and dependent types shouldn't get here");
12881 // is closer to the canonical form of the inputs, each according to a given
13075 // each type (in a canonical sense) only once, in the order they appear
13120 // since it's not actually part of the canonical type. And this should never
13172 #define NON_CANONICAL_TYPE(Class, Base) UNEXPECTED_TYPE(Class, "non-canonical")
13507 #define CANONICAL_TYPE(Class) UNEXPECTED_TYPE(Class, "canonical")
13755 // until we reach their underlying "canonical nodes". Note these are not
13756 // necessarily canonical types, as they may still have sugared properties.
13760 // The canonical nodes differ. Build a common canonical node out of the two,
13765 // The canonical nodes were identical: We may have desugared too much.