[LLVMdev] Strange Multiple Inheritance Errors Using LLVM 2.7

Gonsolo gonsolo at gmail.com
Thu Mar 25 07:54:46 PDT 2010


Hi.

I had some problems with MI too. See bug 6251.

g

Am 25.03.2010 um 16:18 schrieb John Criswell <criswell at uiuc.edu>:

> Dear All,
>
> I'm currently upgrading SAFECode to the LLVM 2.7 API.  I'm getting  
> some
> strange errors in LLVM Passes that use analysis groups and multiple
> inheritance.
>
> To create analysis groups in LLVM 2.6, I would first create a base  
> class
> for the analysis group and then another class that inherited from both
> ModulePass and the analysis group base class.  That worked in LLVM  
> 2.6,
> but now in LLVM 2.7 I'm getting strange behavior.  In particular, I'm
> seeing the wrong functions called when virtual methods of my passes  
> are
> called.  For example, when a SAFECode pass would call the getDSGraph()
> method of the PoolAllocateSimple pass, the releaseMemory() method  
> would
> be called instead.
>
> Has anyone else seen this really bizarre behavior or know what might  
> be
> causing it?  Eliminating multiple inheritance seems to fix the  
> problem,
> but it seems to introduce other problems when chaining analysis passes
> of the same group together.
>
> I see this behavior both on Mac OS X and Linux.
>
> -- John T.
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev



More information about the llvm-dev mailing list