Home | History | Annotate | Download | only in Sema

Lines Matching refs:DeclaratorChunk

57       D.getTypeObject(0).Kind == DeclaratorChunk::Function)
277 /// The attribute is part of a DeclaratorChunk.
318 static DeclaratorChunk *maybeMovePastReturnType(Declarator &declarator,
323 DeclaratorChunk *result = nullptr;
327 DeclaratorChunk &fnChunk = declarator.getTypeObject(i-1);
329 case DeclaratorChunk::Paren:
333 case DeclaratorChunk::Pointer:
334 case DeclaratorChunk::BlockPointer:
335 case DeclaratorChunk::Array:
336 case DeclaratorChunk::Reference:
337 case DeclaratorChunk::MemberPointer:
342 case DeclaratorChunk::Function:
344 DeclaratorChunk &ptrChunk = declarator.getTypeObject(i-1);
346 case DeclaratorChunk::Paren:
347 case DeclaratorChunk::Array:
348 case DeclaratorChunk::Function:
349 case DeclaratorChunk::Reference:
352 case DeclaratorChunk::MemberPointer:
353 case DeclaratorChunk::Pointer:
359 case DeclaratorChunk::BlockPointer:
391 DeclaratorChunk &chunk = declarator.getTypeObject(i-1);
393 case DeclaratorChunk::Pointer:
394 case DeclaratorChunk::BlockPointer: {
397 DeclaratorChunk *destChunk = nullptr;
409 case DeclaratorChunk::Paren:
410 case DeclaratorChunk::Array:
414 case DeclaratorChunk::Function:
417 if (DeclaratorChunk *dest = maybeMovePastReturnType(
428 case DeclaratorChunk::Reference:
429 case DeclaratorChunk::MemberPointer:
451 DeclaratorChunk &chunk = declarator.getTypeObject(i);
453 case DeclaratorChunk::Pointer:
454 case DeclaratorChunk::BlockPointer:
458 case DeclaratorChunk::Reference:
459 case DeclaratorChunk::MemberPointer:
460 case DeclaratorChunk::Paren:
461 case DeclaratorChunk::Array:
464 case DeclaratorChunk::Function:
510 DeclaratorChunk &chunk = declarator.getTypeObject(i-1);
512 case DeclaratorChunk::Function:
517 case DeclaratorChunk::Paren:
518 case DeclaratorChunk::Pointer:
519 case DeclaratorChunk::BlockPointer:
520 case DeclaratorChunk::Array:
521 case DeclaratorChunk::Reference:
522 case DeclaratorChunk::MemberPointer:
542 DeclaratorChunk &chunk = declarator.getTypeObject(i);
543 if (chunk.Kind != DeclaratorChunk::Function) continue;
687 declarator.AddInnermostTypeInfo(DeclaratorChunk::getFunction(
2366 DeclaratorChunk &chunk = declarator.getTypeObject(chunkIndex);
2368 case DeclaratorChunk::Paren:
2372 case DeclaratorChunk::Reference:
2373 case DeclaratorChunk::Pointer:
2381 case DeclaratorChunk::BlockPointer:
2393 case DeclaratorChunk::Array: // suppress if written (id[])?
2394 case DeclaratorChunk::Function:
2395 case DeclaratorChunk::MemberPointer:
2430 DeclaratorChunk &chunk = declarator.getTypeObject(outermostPointerIndex);
2431 if (chunk.Kind != DeclaratorChunk::Pointer &&
2432 chunk.Kind != DeclaratorChunk::BlockPointer)
2512 DeclaratorChunk &OuterChunk = D.getTypeObject(OuterChunkIndex);
2514 case DeclaratorChunk::Paren:
2517 case DeclaratorChunk::Pointer: {
2518 DeclaratorChunk::PointerTypeInfo &PTI = OuterChunk.Ptr;
2530 case DeclaratorChunk::Function:
2531 case DeclaratorChunk::BlockPointer:
2532 case DeclaratorChunk::Reference:
2533 case DeclaratorChunk::Array:
2534 case DeclaratorChunk::MemberPointer:
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;
2911 const DeclaratorChunk::FunctionTypeInfo &FTI,
2913 assert(D.getTypeObject(ChunkIndex).Kind == DeclaratorChunk::Function);
2925 if (D.getTypeObject(I).Kind != DeclaratorChunk::Paren)
2933 D.getTypeObject(I).Kind == DeclaratorChunk::MemberPointer;
3056 DeclaratorChunk &chunk = declarator.getTypeObject(i);
3058 case DeclaratorChunk::Array:
3059 case DeclaratorChunk::Function:
3062 case DeclaratorChunk::BlockPointer:
3063 case DeclaratorChunk::MemberPointer:
3067 case DeclaratorChunk::Paren:
3068 case DeclaratorChunk::Reference:
3071 case DeclaratorChunk::Pointer:
3283 DeclaratorChunk &DeclChunk = D.getTypeObject(Index);
3287 case DeclaratorChunk::Paren:
3289 case DeclaratorChunk::Function: {
3297 case DeclaratorChunk::Pointer:
3298 case DeclaratorChunk::BlockPointer:
3299 case DeclaratorChunk::MemberPointer:
3302 case DeclaratorChunk::Reference:
3305 case DeclaratorChunk::Array:
3369 DeclaratorChunk &chunk = D.getTypeObject(i);
3371 case DeclaratorChunk::Array:
3372 case DeclaratorChunk::Function:
3375 case DeclaratorChunk::BlockPointer:
3376 case DeclaratorChunk::MemberPointer:
3380 case DeclaratorChunk::Paren:
3381 case DeclaratorChunk::Reference:
3384 case DeclaratorChunk::Pointer:
3571 DeclaratorChunk &DeclType = D.getTypeObject(chunkIndex);
3572 IsQualifiedFunction &= DeclType.Kind == DeclaratorChunk::Paren;
3574 case DeclaratorChunk::Paren:
3577 case DeclaratorChunk::BlockPointer:
3590 case DeclaratorChunk::Pointer:
3614 case DeclaratorChunk::Reference: {
3628 case DeclaratorChunk::Array: {
3636 DeclaratorChunk::ArrayTypeInfo &ATI = DeclType.Arr;
3675 const DeclaratorChunk &DC = D.getTypeObject(x);
3677 case DeclaratorChunk::Paren:
3679 case DeclaratorChunk::Array:
3680 case DeclaratorChunk::Pointer:
3681 case DeclaratorChunk::Reference:
3682 case DeclaratorChunk::MemberPointer:
3690 case DeclaratorChunk::Function:
3691 case DeclaratorChunk::BlockPointer:
3713 case DeclaratorChunk::Function: {
3717 const DeclaratorChunk::FunctionTypeInfo &FTI = DeclType.Fun;
3836 DeclaratorChunk ReturnTypeChunk = D.getTypeObject(chunkIndex + 1);
4041 case DeclaratorChunk::MemberPointer:
4161 const DeclaratorChunk &Chunk = D.getTypeObject(I);
4162 assert(Chunk.Kind == DeclaratorChunk::Function);
4193 if (D.getTypeObject(i).Kind != DeclaratorChunk::Paren)
4332 DeclaratorChunk &chunk = D.getTypeObject(chunkIndex);
4374 DeclaratorChunk &chunk = D.getTypeObject(i);
4376 case DeclaratorChunk::Paren:
4380 case DeclaratorChunk::Array:
4381 case DeclaratorChunk::Reference:
4382 case DeclaratorChunk::Pointer:
4388 case DeclaratorChunk::BlockPointer:
4393 case DeclaratorChunk::Function:
4394 case DeclaratorChunk::MemberPointer:
4402 DeclaratorChunk &chunk = D.getTypeObject(inner);
4403 if (chunk.Kind == DeclaratorChunk::Pointer) {
4409 assert(chunk.Kind == DeclaratorChunk::Array ||
4410 chunk.Kind == DeclaratorChunk::Reference);
4693 const DeclaratorChunk &Chunk;
4696 DeclaratorLocFiller(ASTContext &Context, const DeclaratorChunk &Chunk)
4713 assert(Chunk.Kind == DeclaratorChunk::BlockPointer);
4717 assert(Chunk.Kind == DeclaratorChunk::Pointer);
4721 assert(Chunk.Kind == DeclaratorChunk::Pointer);
4725 assert(Chunk.Kind == DeclaratorChunk::MemberPointer);
4770 assert(Chunk.Kind == DeclaratorChunk::Reference);
4776 assert(Chunk.Kind == DeclaratorChunk::Reference);
4781 assert(Chunk.Kind == DeclaratorChunk::Array);
4787 assert(Chunk.Kind == DeclaratorChunk::Function);
4791 const DeclaratorChunk::FunctionTypeInfo &FTI = Chunk.Fun;
4801 assert(Chunk.Kind == DeclaratorChunk::Paren);
4812 static void fillAtomicQualLoc(AtomicTypeLoc ATL, const DeclaratorChunk &Chunk) {
4815 case DeclaratorChunk::Function:
4816 case DeclaratorChunk::Array:
4817 case DeclaratorChunk::Paren:
4820 case DeclaratorChunk::Pointer:
4824 case DeclaratorChunk::BlockPointer:
4825 case DeclaratorChunk::Reference:
4826 case DeclaratorChunk::MemberPointer:
5673 auto moveToChunk = [&](DeclaratorChunk &chunk, bool inFunction) -> bool {
5688 = chunk.Kind == DeclaratorChunk::Pointer ? (inFunction ? PK_FunctionPointer
5690 : chunk.Kind == DeclaratorChunk::BlockPointer ? PK_BlockPointer
5701 if (chunk.Kind != DeclaratorChunk::MemberPointer) {
5717 DeclaratorChunk &chunk = declarator.getTypeObject(i-1);
5719 case DeclaratorChunk::Pointer:
5720 case DeclaratorChunk::BlockPointer:
5721 case DeclaratorChunk::MemberPointer:
5724 case DeclaratorChunk::Paren:
5725 case DeclaratorChunk::Array:
5728 case DeclaratorChunk::Function:
5731 if (DeclaratorChunk *dest = maybeMovePastReturnType(
5740 case DeclaratorChunk::Reference:
6185 // not appertain to a DeclaratorChunk, even if we handle them as type
6348 DeclaratorChunk::Pointer) {