//===-- llvm/Use.h - Definition of the Use class ----------------*- C++ -*-===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file was developed by the LLVM research group and is distributed under
+// the University of Illinois Open Source License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
//
// This defines the Use class. The Use class represents the operand of an
// instruction or some other User instance which refers to a Value. The Use
#ifndef LLVM_USE_H
#define LLVM_USE_H
-#include "Support/ilist"
+#include "llvm/ADT/ilist"
+
+namespace llvm {
+
template<typename NodeTy> struct ilist_traits;
class Value;
class User;
Value *Val;
User *U;
Use *Prev, *Next;
- friend class ilist_traits<Use>;
+ friend struct ilist_traits<Use>;
public:
inline Use(Value *v, User *user);
inline Use(const Use &u);
template<> struct simplify_type<Use> {
typedef Value* SimpleType;
static SimpleType getSimplifiedValue(const Use &Val) {
- return (SimpleType)Val.get();
+ return static_cast<SimpleType>(Val.get());
}
};
template<> struct simplify_type<const Use> {
typedef Value* SimpleType;
static SimpleType getSimplifiedValue(const Use &Val) {
- return (SimpleType)Val.get();
+ return static_cast<SimpleType>(Val.get());
}
};
}
};
+} // End llvm namespace
+
#endif