Lines Matching full:pack
92 /// elements that are pack expansions.
150 /// \brief Suppress traversal of template argument pack expansions.
158 /// \brief Suppress traversal of template argument pack expansions.
167 /// parameter pack. In this case, the unexpanded pack can occur anywhere,
169 /// lambda, we don't propagate the 'contains unexpanded parameter pack' bit
180 // If any capture names a function parameter pack, that pack is expanded
200 /// \brief Determine whether it's possible for an unexpanded parameter pack to
224 // parameter pack, and we are done.
268 // An appearance of a name of a parameter pack that is not expanded is
283 // An appearance of a name of a parameter pack that is not expanded is
297 // An appearance of a name of a parameter pack that is not expanded is
314 // An appearance of a name of a parameter pack that is not expanded is
470 // Create the pack expansion type and source-location information.
489 // The pattern of a pack expansion shall name one or more
490 // parameter packs that are not expanded by a nested pack
511 // The pattern of a pack expansion shall name one or more
512 // parameter packs that are not expanded by a nested pack
520 // Create the pack expansion expression and source-location information.
525 /// \brief Retrieve the depth and index of a parameter pack.
551 // Compute the depth and index for this parameter pack.
571 // Determine the size of this argument pack.
574 // Figure out whether we're instantiating to an argument pack or not.
581 // We could expand this function parameter pack.
584 // We can't expand this function parameter pack, so we can't expand
585 // the pack expansion.
591 // cannot expand the pack expansion. Make a note of this, but we still
599 // Determine the size of the argument pack.
605 // arguments corresponding to a template parameter pack, even when the
618 // The is the first pack we've seen for which we have an argument.
629 // All of the parameter packs expanded by a pack expansion shall have
654 // Compute the depth and index for this parameter pack.
665 // Function parameter pack.
672 // The pattern refers to an unexpanded pack. We're not ready to expand
673 // this pack yet.
677 assert((!Result || *Result == Size) && "inconsistent pack sizes");
687 // expand this pack yet.
690 // Determine the size of the argument pack.
692 assert((!Result || *Result == Size) && "inconsistent pack sizes");
812 /// \brief Called when an expression computing the size of a parameter pack
823 /// \param Name The name of the parameter pack whose size will be determined.
824 /// \param NameLoc The source location of the name of the parameter pack.
832 // The identifier in a sizeof... expression shall name a parameter pack.
927 case TemplateArgument::Pack:
959 // either e1 shall contain an unexpanded parameter pack or e2 shall contain
960 // an unexpanded parameter pack, but not both.
973 // parameter pack.
975 Expr *Pack = LHS ? LHS : RHS;
976 assert(Pack && "fold expression with neither LHS nor RHS");
977 if (!Pack->containsUnexpandedParameterPack())
979 << Pack->getSourceRange();