public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* RFC Kill TYPE_METHODS
@ 2017-07-03 17:49 Nathan Sidwell
  2017-07-03 18:10 ` Richard Biener
  0 siblings, 1 reply; 2+ messages in thread
From: Nathan Sidwell @ 2017-07-03 17:49 UTC (permalink / raw)
  To: GCC Patches

We currently have both TYPE_FIELDS and TYPE_METHODS for RECORD or UNION 
types.

Originally TYPE_FIELDS held the FIELD_DECLS, but the C++ FE puts other 
kinds of things there -- TYPE_DECLs are a favourite.  The C++ FE was the 
only user of TYPE_METHODS, which holds member functions.  AFAICT it is 
still the only generator.

Given that the common code iterating over TYPE_FIELDS must already check 
for non FIELD_DECL things, it seems superflous for the methods to be on 
a separate list.  A quick grep shows ipa-devirt, c-ada-spec.c and debug 
emission to be the only non C++ FE things that would need a bit of cleanup.

Having a single chain of member decls will simplify the C++ FE, as I try 
and merge its class member symbol handling.

Any objections to going down this path?

nathan
-- 
Nathan Sidwell

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: RFC Kill TYPE_METHODS
  2017-07-03 17:49 RFC Kill TYPE_METHODS Nathan Sidwell
@ 2017-07-03 18:10 ` Richard Biener
  0 siblings, 0 replies; 2+ messages in thread
From: Richard Biener @ 2017-07-03 18:10 UTC (permalink / raw)
  To: gcc-patches, Nathan Sidwell, GCC Patches

On July 3, 2017 7:49:32 PM GMT+02:00, Nathan Sidwell <nathan@acm.org> wrote:
>We currently have both TYPE_FIELDS and TYPE_METHODS for RECORD or UNION
>
>types.
>
>Originally TYPE_FIELDS held the FIELD_DECLS, but the C++ FE puts other 
>kinds of things there -- TYPE_DECLs are a favourite.  The C++ FE was
>the 
>only user of TYPE_METHODS, which holds member functions.  AFAICT it is 
>still the only generator.
>
>Given that the common code iterating over TYPE_FIELDS must already
>check 
>for non FIELD_DECL things, it seems superflous for the methods to be on
>
>a separate list.  A quick grep shows ipa-devirt, c-ada-spec.c and debug
>
>emission to be the only non C++ FE things that would need a bit of
>cleanup.
>
>Having a single chain of member decls will simplify the C++ FE, as I
>try 
>and merge its class member symbol handling.
>
>Any objections to going down this path?

Go ahead!

>nathan

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2017-07-03 18:10 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-07-03 17:49 RFC Kill TYPE_METHODS Nathan Sidwell
2017-07-03 18:10 ` Richard Biener

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).