[llvm-commits] Re: Re: PR889 final version

pawel kunio pawel.kunio at gmail.com
Mon Dec 3 14:59:29 PST 2007


> llvm/Instructions.h:2206: warning: 'class llvm::FPToUIInst' has  virtual functions but non-virtual destructor

> llvm/Instructions.h:2258: error: a class-key must be used when declaring a friend
> llvm/Instructions.h:2258: error: friend declaration does not name a class or function

Whoah, pretty strange I get neither of those. I'm using compiler from
vs 2008 beta2 'orcas'.
What compiler should I use to be more in sync with the one used by You
for verification?
btw, I had a deeper look into the Value class hierarchy and it seems
that to remove all vtables
there will be a need to flatten Instruction hierarchy with regard to
the clone virtual method as well as
Constant (destroyConstant,isNullValue,replaceUsesOfWithOnConstant
methods) and GlobalValue
(isDeclaration method). Those as well as print and dump methods will
probably be blocking the
Value destructor from being de-virtualized.

Anyway, please find the patch attached with the Value destructor
virtualized temporarily and
with added 'class' clause to friend Value declarations.

Best regards,
Pawel
-------------- next part --------------
A non-text attachment was scrubbed...
Name: llvm PR889-try4.patch
Type: application/octet-stream
Size: 58520 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20071203/6881c081/attachment.obj>


More information about the llvm-commits mailing list