This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Multiple inheritance
- To: allen at eecs dot tulane dot edu (Joshua S. Allen), egcs at cygnus dot com
- Subject: Re: Multiple inheritance
- From: Jason Merrill <jason at cygnus dot com>
- Date: 01 Dec 1997 18:13:54 -0800
- References: <199712011505.JAA11781.cygnus.egcs@duvieux.eecs.tulane.edu>
>>>>> Joshua S Allen <allen@eecs.tulane.edu> writes:
> I am making modifications to the gnu g++ compiler to include automatic
> conflict resolution of multiple inheritance using a linearization
> algorithm.
What do you mean?
> (1) I need to construct a table of direct parents of a class. Whereas this
> could easily be done at parse time, it is presenting me with problems and I
> was wondering if you could direct me to how this information could be
> extracted from the parse tree.
TYPE_BINFO_BASETYPES (type) is a vector of the direct bases.
> (2) I am adding the algorithm within the function lookup_fnfields
> (cp/search.c) where
> errstr = "request for method %D' is ambiguous";
> Once I locate the method in a class, what is the format of the return
> value I give to the calling function. I need a way of telling the calling
> function the particular method within a specific class to use.
lookup_fnfields returns a list where the PURPOSE is the basetype where the
functions are found, and the VALUE is the list of functions.
Jason