This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Constant pointer to (member) function, indirect call


On Tue, 1 Mar 2005 Mark Mitchell wrote:
> Helge Bahmann wrote:
> >     void (A::*function2)(void) throw()=&A::function2;
> >     (a.*function2)();
>
> > however for the call through pointer function2 gcc will always generate an
> > indirect call, i386 assembly for example looks like:
>
> Yes, it should be able to do so, but it's not.  This is probably
> something that could be done via range propagation.

hm... it is not that my life depends on it, but is there a way to tell the
compiler "this member function pointer will never point to a virtual
function"? (especially because I know it is constant?)

Best regards


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]