Lines Matching refs:Typedef
224 // Create the new typedef
225 TypedefNameDecl *Typedef;
227 Typedef = TypeAliasDecl::Create(SemaRef.Context, Owner, D->getLocStart(),
230 Typedef = TypedefDecl::Create(SemaRef.Context, Owner, D->getLocStart(),
233 Typedef->setInvalidDecl();
235 // If the old typedef was the name for linkage purposes of an anonymous
236 // tag decl, re-establish that relationship for the new typedef.
242 newTag->setTypedefNameForAnonDecl(Typedef);
254 // If the typedef types are not identical, reject them.
255 SemaRef.isIncompatibleTypedef(InstPrevTypedef, Typedef);
257 Typedef->setPreviousDeclaration(InstPrevTypedef);
260 SemaRef.InstantiateAttrs(TemplateArgs, D, Typedef);
262 Typedef->setAccess(D->getAccess());
264 return Typedef;
268 Decl *Typedef = InstantiateTypedefNameDecl(D, /*IsTypeAlias=*/false);
269 Owner->addDecl(Typedef);
270 return Typedef;
274 Decl *Typedef = InstantiateTypedefNameDecl(D, /*IsTypeAlias=*/true);
275 Owner->addDecl(Typedef);
276 return Typedef;
1356 // typedef (C++ [dcl.typedef]p4).
1669 typedef (C++ [dcl.typedef]p4).
2399 typedef SmallVector<NamedDecl *, 8> ParamVector;
2752 // was declared via a typedef or with attributes, e.g.,
2754 // typedef int functype(int, int);
2984 typedef Sema::ActiveTemplateInstantiation ActiveInstType;
4034 typedef LocalInstantiationScope::DeclArgumentPack DeclArgumentPack;