void eraseFromParent();
- // getNext/Prev - Return the next or previous function in the list. These
- // methods should never be used directly, and are only used to implement the
- // function list as part of the module.
- //
- Function *getNext() { return Next; }
- const Function *getNext() const { return Next; }
- Function *getPrev() { return Prev; }
- const Function *getPrev() const { return Prev; }
-
/// Get the underlying elements of the Function... the basic block list is
/// empty for external functions.
///
static unsigned getBasicBlockListOffset() {
Function *Obj = 0;
- return reinterpret_cast<unsigned>(&Obj->BasicBlocks);
+ return unsigned(reinterpret_cast<uintptr_t>(&Obj->BasicBlocks));
}
static unsigned getArgumentListOffset() {
Function *Obj = 0;
- return reinterpret_cast<unsigned>(&Obj->ArgumentList);
+ return unsigned(reinterpret_cast<uintptr_t>(&Obj->ArgumentList));
}
+private:
+ // getNext/Prev - Return the next or previous function in the list. These
+ // methods should never be used directly, and are only used to implement the
+ // function list as part of the module.
+ //
+ Function *getNext() { return Next; }
+ const Function *getNext() const { return Next; }
+ Function *getPrev() { return Prev; }
+ const Function *getPrev() const { return Prev; }
};
inline ValueSymbolTable *