Lines Matching defs:Specialization
718 // specialization causes the implicit instantiation of the declarations, but
837 // specialization. If it is a friend, we want to build it in
1225 // Check whether there is already a function template specialization for
1235 // If we already have a function template specialization, return it.
1345 // Record this function template specialization.
1375 assert(isFriend && "non-friend has dependent specialization info?");
1503 // We are creating a function template specialization from a function
1505 // specialization for this particular set of template arguments.
1512 // If we already have a function template specialization, return it.
1591 // If we're instantiating a specialization of a function template, our
1667 // Record this function template specialization.
2299 // Associate the specialization with the pattern.
2300 FunctionDecl *Specialization = cast<FunctionDecl>(Previous.getFoundDecl());
2301 assert(Specialization && "Class scope Specialization is null");
2302 SemaRef.Context.setClassScopeSpecializationPattern(Specialization, OldFD);
2340 // As a MS extension, we permit class-scope explicit specialization
2345 "can only instantiate an explicit specialization "
2360 // specialization.
2382 // Figure out where to insert this class template explicit specialization
2420 // Create the class template partial specialization declaration.
2432 // Add this partial specialization to the set of class template partial
2442 // arguments of the class template explicit specialization.
2448 // specialization as the user wrote in the specialization
2450 // from the specialization's declaration the way that the user
2451 // actually wrote the specialization, rather than formatting the
2453 // template arguments in the specialization.
2467 // Instantiate the members of the class-scope explicit specialization eagerly.
2468 // We don't have support for lazy instantiation of an explicit specialization
2485 "A template specialization
2504 // Find the variable template specialization declaration that
2509 // If we already have a variable template specialization, return it.
2622 /// specialization.
2628 /// specialization that we are instantiating.
2630 /// \returns The instantiated partial specialization, if successful; otherwise,
2637 // specialization, which will contain the instantiations of the template
2642 // specialization.
2649 // specialization.
2669 // Figure out where to insert this class template partial specialization
2676 // arguments of the class template partial specialization.
2683 // specialization as the user wrote in the specialization
2685 // from the specialization's declaration the way that the user
2686 // actually wrote the specialization, rather than formatting the
2688 // template arguments in the specialization.
2697 // We've already seen a partial specialization with the same template
2720 // Create the class template partial specialization declaration.
2741 // Add this partial specialization to the set of class template partial
2749 /// specialization.
2755 /// specialization that we are instantiating.
2757 /// \returns The instantiated partial specialization, if successful; otherwise,
2764 // specialization, which will contain the instantiations of the template
2769 // specialization.
2776 // specialization.
2793 // Figure out where to insert this variable template partial specialization
2800 // arguments of the variable template partial specialization.
2805 // specialization as the user wrote in the specialization
2807 // from the specialization's declaration the way that the user
2808 // actually wrote the specialization, rather than formatting the
2810 // template arguments in the specialization.
2816 // We've already seen a partial specialization with the same template
2853 // Create the variable template partial specialization declaration.
2868 // Add this partial specialization to the set of variable template partial
3193 // to keeping the new function template specialization. We therefore
3196 // specialization, which is not a SFINAE context, so that we diagnose any
3283 /// function template specialization or member function of a class template
3284 /// specialization.
3299 // Never instantiate an explicit specialization except if it is a class scope
3300 // explicit specialization.
3503 // specialization of a static data member template, the first declaration may
3509 // partial specialization, don't do this. The member specialization completely
3531 /// \brief Instantiates a variable template specialization by completing it
3544 // Update the type of this variable template specialization.
3710 /// variable of a class template specialization.
3740 // If this is a variable template specialization, make sure that it is
3753 "Specialization without specialized template?");
3853 // definition (or provide a specialization for it) in another translation
3879 // Never instantiate an explicit specialization.
4467 // a class template or class template partial specialization.
4486 // specialization of the template we're mapping.
4637 " specialization?");
4644 // Check if the most recent declaration has changed the specialization kind
4648 llvm_unreachable("Cannot instantitiate an undeclared specialization.");