From 023cfb6871c3a302387ea3e228dc000e45639b5b Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Mon, 8 May 2006 05:59:36 +0000 Subject: [PATCH] Move the definition of value_use_iterator::getOperandNo to User.h where the 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 --- include/llvm/Use.h | 7 +++---- include/llvm/User.h | 7 +++++++ 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/include/llvm/Use.h b/include/llvm/Use.h index e817601f80c..c88d41f7005 100644 --- a/include/llvm/Use.h +++ b/include/llvm/Use.h @@ -141,11 +141,10 @@ public: 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; }; diff --git a/include/llvm/User.h b/include/llvm/User.h index b38c516d147..b0ecf75d860 100644 --- a/include/llvm/User.h +++ b/include/llvm/User.h @@ -112,6 +112,13 @@ template<> struct simplify_type { template<> struct simplify_type : public simplify_type {}; + +// value_use_iterator::getOperandNo - Requires the definition of the User class. +template +unsigned value_use_iterator::getOperandNo() const { + return U - U->getUser()->op_begin(); +} + } // End llvm namespace #endif