[LLVMdev] why dummy asserting base/interface class virtual methods instead of pure virtual methods?

Heikki Kultala hkultala at cs.tut.fi
Thu Jan 20 23:11:22 PST 2011


LLVM code base seems to be full of base/interface classes, which have 
methods like

   virtual SDValue
     LowerCall(SDValue Chain, SDValue Callee,
               CallingConv::ID CallConv, bool isVarArg, bool &isTailCall,
               const SmallVectorImpl<ISD::OutputArg> &Outs,
               const SmallVectorImpl<SDValue> &OutVals,
               const SmallVectorImpl<ISD::InputArg> &Ins,
               DebugLoc dl, SelectionDAG &DAG,
               SmallVectorImpl<SDValue> &InVals) const {
     assert(0 && "Not Implemented");
     return SDValue();    // this is here to silence compiler errors
   }




Why are these not pure virtual methods?



More information about the llvm-dev mailing list