definition of the User class is available, this fixes the build with some
compiler versions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28163
91177308-0d34-0410-b5e6-
96231b3b80d8
Use &getUse() const { return *U; }
- /// getOperandNo - Return the operand # of this use in its User.
+ /// getOperandNo - Return the operand # of this use in its User. Defined in
+ /// User.h
///
- unsigned getOperandNo() const {
- return U - U->getUser()->op_begin();
- }
+ unsigned getOperandNo() const;
};
template<> struct simplify_type<const User::const_op_iterator>
: public simplify_type<User::const_op_iterator> {};
+
+// value_use_iterator::getOperandNo - Requires the definition of the User class.
+template<typename UserTy>
+unsigned value_use_iterator<UserTy>::getOperandNo() const {
+ return U - U->getUser()->op_begin();
+}
+
} // End llvm namespace
#endif