From: Marek Polacek Date: Wed, 3 Feb 2021 16:58:13 +0000 (-0500) Subject: c++: Mark member functions as const [PR98951] X-Git-Tag: basepoints/gcc-12~1167 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b52a1dfe12a6303c7649f3ff5b8dac6c1001d49a;p=thirdparty%2Fgcc.git c++: Mark member functions as const [PR98951] These member functions look like they could be marked const, since they don't modify any (non-mutable) class members. PR c++/98951 * call.c (struct z_candidate): Mark rewritten and reversed as const. (struct NonPublicField): Mark operator() as const. (struct NonTrivialField): Likewise. --- diff --git a/gcc/cp/call.c b/gcc/cp/call.c index 87a7af127967..3068c0f8cfd3 100644 --- a/gcc/cp/call.c +++ b/gcc/cp/call.c @@ -520,8 +520,8 @@ struct z_candidate { /* The flags active in add_candidate. */ int flags; - bool rewritten () { return (flags & LOOKUP_REWRITTEN); } - bool reversed () { return (flags & LOOKUP_REVERSED); } + bool rewritten () const { return (flags & LOOKUP_REWRITTEN); } + bool reversed () const { return (flags & LOOKUP_REVERSED); } }; /* Returns true iff T is a null pointer constant in the sense of @@ -9474,7 +9474,7 @@ first_non_static_field (tree type, Predicate pred) struct NonPublicField { - bool operator() (const_tree t) + bool operator() (const_tree t) const { return DECL_P (t) && (TREE_PRIVATE (t) || TREE_PROTECTED (t)); } @@ -9491,7 +9491,7 @@ first_non_public_field (tree type) struct NonTrivialField { - bool operator() (const_tree t) + bool operator() (const_tree t) const { return !trivial_type_p (DECL_P (t) ? TREE_TYPE (t) : t); }