//===-- llvm/GlobalVariable.h - GlobalVariable 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 file contains the declaration of the GlobalVariable class, which
class GlobalVariable : public GlobalValue {
friend class SymbolTableListTraits<GlobalVariable, Module, Module,
ilist_traits<GlobalVariable> >;
+ void operator=(const GlobalVariable &); // Do not implement
+ GlobalVariable(const GlobalVariable &); // Do not implement
+
void setParent(Module *parent);
GlobalVariable *Prev, *Next;
/// automatically inserted into the end of the specified modules global list.
///
GlobalVariable(const Type *Ty, bool isConstant, LinkageTypes Linkage,
- Constant *Initializer = 0, const std::string &Name = "",
+ Constant *Initializer = 0, const std::string &Name = "",
Module *Parent = 0);
- // Specialize setName to handle symbol table majik...
- virtual void setName(const std::string &name, SymbolTable *ST = 0);
-
/// isExternal - Is this global variable lacking an initializer? If so, the
/// global variable is defined in some other translation unit, and is thus
/// externally defined here.
/// and deletes it.
///
void eraseFromParent();
-
- /// Override Constant's implementation of this method so we can
+
+ /// Override Constant's implementation of this method so we can
/// replace constant initializers.
- virtual void replaceUsesOfWithOnConstant(Value *From, Value *To,
- bool DisableChecking = false);
-
+ virtual void replaceUsesOfWithOnConstant(Value *From, Value *To, Use *U);
+
virtual void print(std::ostream &OS) const;
// Methods for support type inquiry through isa, cast, and dyn_cast: