This is the mail archive of the gcc-bugs@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]

[Bug c++/42336] [4.5 Regression] ICE with pointer-to-member-function argument in template function with -fipa-sra



------- Comment #22 from rguenth at gcc dot gnu dot org  2010-01-20 18:59 -------
(In reply to comment #18)
> Subject: Re:  [4.5 Regression] ICE with pointer-to-member-function
>  argument in template function
> 
> On 01/10/2010 06:42 PM, hubicka at gcc dot gnu dot org wrote:
> > In general I am not sure plan of doing all
> > datastructure/function call conventions changes via cloning is coolest idea.
> 
> Well, just pretending that a particular parameter never existed isn't 
> acceptable from a debugging standpoint; I think we need to have a 
> separate modified decl which points back to the original unmodified decl 
> with DECL_ABSTRACT_ORIGIN.
> 
> Beyond that, it might be possible to avoid much copying by just moving 
> the function body over from the original decl to the modified one.

That hints at a possible fix?  Instead of versioning the function just
version the DECL (thus basically perform the DECL creation part of
versioning only).  It requires fixing up call stmts of course, but that
shouldn't be too hard.

Martin - can you try this?


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42336


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