Lines Matching refs:DeclType
1452 assert(E && "Didn't get an expression for decltype?");
1592 // or decltype-specifier, in which case the cv-qualifiers are ignored.
1886 // decltype-specifier (7.1.6.2) denotes a type TR that is a reference to a
2708 DeclaratorChunk &DeclType = D.getTypeObject(chunkIndex);
2709 if (DeclType.Kind == DeclaratorChunk::Function) {
2710 const DeclaratorChunk::FunctionTypeInfo &FTI = DeclType.Fun;
2811 DeclaratorChunk &DeclType, QualType RT) {
2812 const DeclaratorChunk::FunctionTypeInfo &FTI = DeclType.Fun;
2841 SourceRange ParenRange(DeclType.Loc, DeclType.EndLoc);
2843 S.Diag(DeclType.Loc,
2891 S.Diag(DeclType.Loc, diag::note_empty_parens_default_ctor)
2899 S.Diag(DeclType.Loc, diag::note_empty_parens_zero_initialize)
3277 // If T is 'decltype(auto)', the only declarators we can have are parens
3571 DeclaratorChunk &DeclType = D.getTypeObject(chunkIndex);
3572 IsQualifiedFunction &= DeclType.Kind == DeclaratorChunk::Paren;
3573 switch (DeclType.Kind) {
3580 S.Diag(DeclType.Loc, diag::err_blocks_disable);
3584 DeclType.Loc, DeclType.getAttrListRef());
3587 if (DeclType.Cls.TypeQuals)
3588 T = S.BuildQualifiedType(T, DeclType.Loc, DeclType.Cls.TypeQuals);
3600 inferPointerNullability(SimplePointerKind::Pointer, DeclType.Loc,
3601 DeclType.getAttrListRef());
3605 if (DeclType.Ptr.TypeQuals)
3606 T = S.BuildQualifiedType(T, DeclType.Loc, DeclType.Ptr.TypeQuals);
3609 T = S.BuildPointerType(T, DeclType.Loc, Name);
3610 if (DeclType.Ptr.TypeQuals)
3611 T = S.BuildQualifiedType(T, DeclType.Loc, DeclType.Ptr.TypeQuals);
3622 T = S.BuildReferenceType(T, DeclType.Ref.LValueRef, DeclType.Loc, Name);
3624 if (DeclType.Ref.HasRestrict)
3625 T = S.BuildQualifiedType(T, DeclType.Loc, Qualifiers::Restrict);
3636 DeclaratorChunk::ArrayTypeInfo &ATI = DeclType.Arr;
3649 S.Diag(DeclType.Loc, diag::err_array_star_outside_prototype);
3660 S.Diag(DeclType.Loc, diag::err_array_static_outside_prototype) <<
3683 S.Diag(DeclType.Loc, diag::err_array_static_not_outermost) <<
3701 // We've already diagnosed this for decltype(auto).
3703 S.Diag(DeclType.Loc, diag::err_illegal_decl_array_of_auto)
3710 SourceRange(DeclType.Loc, DeclType.EndLoc), Name);
3717 const DeclaratorChunk::FunctionTypeInfo &FTI = DeclType.Fun;
3768 S.Diag(DeclType.Loc, diagID) << T->isFunctionType() << T;
3825 S.Diag(DeclType.Loc, diag::err_func_returning_qualified_void) << T;
3887 warnAboutAmbiguousFunction(S, D, DeclType, T);
3954 S.Diag(DeclType.Loc, diag::err_void_only_param);
3965 S.Diag(DeclType.Loc, diag::err_void_param_qualified);
4043 CXXScopeSpec &SS = DeclType.Mem.Scope();
4048 DeclType.Loc, DeclType.getAttrListRef());
4082 S.Diag(DeclType.Mem.Scope().getBeginLoc(),
4085 << DeclType.Mem.Scope().getRange();
4090 T = S.BuildMemberPointerType(T, ClsType, DeclType.Loc,
4095 } else if (DeclType.Mem.TypeQuals) {
4096 T = S.BuildQualifiedType(T, DeclType.Loc, DeclType.Mem.TypeQuals);
4108 const_cast<AttributeList *>(DeclType.getAttrs()));
6877 /// getDecltypeForExpr - Given an expr, will return the decltype for
6885 // The type denoted by decltype(e) is defined as follows:
6888 // member access (5.2.5), decltype(e) is the type of the entity named
6909 // Every occurrence of decltype((x)) where x is a possibly
6933 // - otherwise, if e is an xvalue, decltype(e) is T&&, where T is the
6936 // - otherwise, if e is an lvalue, decltype
6939 // - otherwise, decltype(e) is the type of e.
6954 // The expression operand for decltype is in an unevaluated expression