diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2014-05-17 21:29:57 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2014-05-17 21:29:57 +0000 |
commit | c86235f4eb3ee71272aed492d3faa18360d54bbc (patch) | |
tree | 457375892b6c914a95ac0dc0d8bd5442b484e869 /include | |
parent | e7a6c2f1dfca147cdedb9683f7193882b548753d (diff) | |
download | llvm-c86235f4eb3ee71272aed492d3faa18360d54bbc.tar.gz llvm-c86235f4eb3ee71272aed492d3faa18360d54bbc.tar.bz2 llvm-c86235f4eb3ee71272aed492d3faa18360d54bbc.tar.xz |
Use create methods since msvc doesn't handle delegating constructors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@209076 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r-- | include/llvm/IR/GlobalAlias.h | 24 |
1 files changed, 16 insertions, 8 deletions
diff --git a/include/llvm/IR/GlobalAlias.h b/include/llvm/IR/GlobalAlias.h index f5181ab6aa..d9f0b4a89b 100644 --- a/include/llvm/IR/GlobalAlias.h +++ b/include/llvm/IR/GlobalAlias.h @@ -33,29 +33,37 @@ class GlobalAlias : public GlobalValue, public ilist_node<GlobalAlias> { void setParent(Module *parent); + GlobalAlias(Type *Ty, unsigned AddressSpace, LinkageTypes Linkage, + const Twine &Name, GlobalObject *Aliasee, Module *Parent); + public: // allocate space for exactly one operand void *operator new(size_t s) { return User::operator new(s, 1); } + /// If a parent module is specified, the alias is automatically inserted into /// the end of the specified module's alias list. - GlobalAlias(Type *Ty, unsigned AddressSpace, LinkageTypes Linkage, - const Twine &Name, GlobalObject *Aliasee, Module *Parent); + static GlobalAlias *create(Type *Ty, unsigned AddressSpace, + LinkageTypes Linkage, const Twine &Name, + GlobalObject *Aliasee, Module *Parent); // Without the Aliasee. - GlobalAlias(Type *Ty, unsigned AddressSpace, LinkageTypes Linkage, - const Twine &Name, Module *Parent); + static GlobalAlias *create(Type *Ty, unsigned AddressSpace, + LinkageTypes Linkage, const Twine &Name, + Module *Parent); // The module is taken from the Aliasee. - GlobalAlias(Type *Ty, unsigned AddressSpace, LinkageTypes Linkage, - const Twine &Name, GlobalObject *Aliasee); + static GlobalAlias *create(Type *Ty, unsigned AddressSpace, + LinkageTypes Linkage, const Twine &Name, + GlobalObject *Aliasee); // Type, Parent and AddressSpace taken from the Aliasee. - GlobalAlias(LinkageTypes Linkage, const Twine &Name, GlobalObject *Aliasee); + static GlobalAlias *create(LinkageTypes Linkage, const Twine &Name, + GlobalObject *Aliasee); // Linkage, Type, Parent and AddressSpace taken from the Aliasee. - GlobalAlias(const Twine &Name, GlobalObject *Aliasee); + static GlobalAlias *create(const Twine &Name, GlobalObject *Aliasee); /// Provide fast operand accessors DECLARE_TRANSPARENT_OPERAND_ACCESSORS(Constant); |