This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: -fvtable-gc
- To: rth at redhat dot com
- Subject: Re: -fvtable-gc
- From: Mark Mitchell <mark at codesourcery dot com>
- Date: Mon, 12 Feb 2001 02:17:36 -0800
- Cc: jason at redhat dot com, gcc at gcc dot gnu dot org
- Organization: CodeSourcery, LLC
- References: <20010211201552.A15572@redhat.com>
>>>>> "Richard" == Richard Henderson <rth@redhat.com> writes:
Richard> So I was attempting this afternoon to implement the thing properly,
Richard> i.e. with notes and calls into varasm.c instead of random asm hackery
Richard> in cp/foo.c. But I was defeated in my quest to figure out how to
Richard> differentiate method calls from normal calls, and member address
Richard> taking at all.
I'm not surprised. I think I might have been too...
Richard> What is METHOD_CALL_EXPR if not for calling methods? If I have
That's a good question -- I never even heard of that before. The
support for that looks very incomplete; note, for example, that
expand_expr doesn't handle it. We use CALL_EXPRs everywhere. You
can, of course, look at the function being called to see if it is a
method -- but if a member-function-pointer is in use, you may not have
an easy time figuring out what's going on.
Richard> I get an OFFSET_REF, which isn't actually documented anywhere,
Richard> and I can't figure out what it means exactly.
It's quasi-documented in cp/cp-tree.def. I have never liked this
construct much; it doesn't map directly to anything in the language
itself, for example.
--
Mark Mitchell mark@codesourcery.com
CodeSourcery, LLC http://www.codesourcery.com