Lines Matching defs:friend

36 /* Returns nonzero if SUPPLICANT is a friend of TYPE.  */
63 tree friend = TREE_VALUE (friends);
65 if (friend == NULL_TREE)
68 if (supplicant == friend)
71 if (is_specialization_of_friend (supplicant, friend))
114 /* A namespace is not friend to anybody. */
124 /* Add a new friend to the friends of the aggregate type TYPE.
125 DECL is the FUNCTION_DECL of the friend being added.
127 If COMPLAIN is true, warning about duplicate friend is issued.
157 warning (0, "%qD is already a friend of class %qT",
187 /* Make FRIEND_TYPE a friend class to TYPE. If FRIEND_TYPE has already
189 TYPE. If not, we make it a pending friend, which can later be added
191 DECL_UNDEFINED_FRIENDS contains a (possibly empty) list of friend
194 waiting to make it their friend. Note that these two can both
197 If COMPLAIN is true, warning about duplicate friend is issued.
208 headers used for this friend declaration. TEMPLATE_MEMBER_P,
216 friend class C<V>::D;
226 The friend is a template friend iff FRIEND_DEPTH is nonzero. */
233 error ("invalid type %qT declared %<friend%>", friend_type);
246 /* [temp.friend]
249 error ("partial specialization %qT declared %<friend%>",
262 /* [temp.friend]
264 A friend of a class or class template can be a function or
275 /* template <class U> friend class T::X<U>; */
276 /* [temp.friend]
279 error ("partial specialization %qT declared %<friend%>",
340 /* template <class T> friend class T; */
341 error ("template parameter type %qT declared %<friend%>", friend_type);
346 /* template <class T> friend class A; where A is not a template */
351 /* template <class T> friend class A; where A is a template */
357 /* See if it is already a friend. */
369 warning (0, "%qD is already a friend of %qT", probe, type);
378 warning (0, "%qT is already a friend of %qT", probe, type);
399 /* Record DECL (a FUNCTION_DECL) as a friend of the
401 class of which it is a member, as named in the friend declaration.
402 DECLARATOR is the name of the friend. FUNCDEF_FLAG is true if the
403 friend declaration is a definition of the function. FLAGS is as
414 /* Every decl that gets here is a friend of something. */
428 headers used for this friend declaration. TEMPLATE_MEMBER_P is
435 friend void C<V>::f(W);
454 /* A method friend. */
468 to be a friend, so we do lookup here even if CTYPE is in
495 error ("member %qD declared as friend before type %qT defined",
498 /* A global friend.
499 @@ or possibly a friend from a base class ?!? */
508 in their scope, their friend wind up in top-level scope as well. */
531 insert an unqualified friend into the local scope
539 unqualified friend decl into the template parameter
551 warning (0, "friend declaration %q#D declares a non-template "
558 "-Wno-non-template-friend disables this warning");
574 handle them in start_decl_1, but since this is a friend decl start_decl_1