Making deleted copy constructors and operators to be private for better diagnostics when deleted is not available.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@226769 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Bieneman 2015-01-22 02:51:33 +00:00
parent 73f671a60e
commit ce93603b11

View File

@ -1169,6 +1169,10 @@ class opt : public Option,
Parser.initialize(*this);
}
// Command line options should not be copyable
opt(const opt &) LLVM_DELETED_FUNCTION;
opt &operator=(const opt &) LLVM_DELETED_FUNCTION;
public:
// setInitialValue - Used by the cl::init modifier...
void setInitialValue(const DataType &V) { this->setValue(V, true); }
@ -1180,10 +1184,6 @@ public:
return this->getValue();
}
// Command line options should not be copyable
opt(const opt &) LLVM_DELETED_FUNCTION;
opt &operator=(const opt &) LLVM_DELETED_FUNCTION;
// One option...
template <class M0t>
explicit opt(const M0t &M0)
@ -1368,6 +1368,10 @@ class list : public Option, public list_storage<DataType, Storage> {
Parser.initialize(*this);
}
// Command line options should not be copyable
list(const list &) LLVM_DELETED_FUNCTION;
list &operator=(const list &) LLVM_DELETED_FUNCTION;
public:
ParserClass &getParser() { return Parser; }
@ -1378,10 +1382,6 @@ public:
void setNumAdditionalVals(unsigned n) { Option::setNumAdditionalVals(n); }
// Command line options should not be copyable
list(const list &) LLVM_DELETED_FUNCTION;
list &operator=(const list &) LLVM_DELETED_FUNCTION;
// One option...
template <class M0t>
explicit list(const M0t &M0)
@ -1592,6 +1592,10 @@ class bits : public Option, public bits_storage<DataType, Storage> {
Parser.initialize(*this);
}
// Command line options should not be copyable
bits(const bits &) LLVM_DELETED_FUNCTION;
bits &operator=(const bits &) LLVM_DELETED_FUNCTION;
public:
ParserClass &getParser() { return Parser; }
@ -1600,10 +1604,6 @@ public:
return Positions[optnum];
}
// Command line options should not be copyable
bits(const bits &) LLVM_DELETED_FUNCTION;
bits &operator=(const bits &) LLVM_DELETED_FUNCTION;
// One option...
template <class M0t>
explicit bits(const M0t &M0)
@ -1730,6 +1730,10 @@ class alias : public Option {
addArgument();
}
// Command line options should not be copyable
alias(const alias &) LLVM_DELETED_FUNCTION;
alias &operator=(const alias &) LLVM_DELETED_FUNCTION;
public:
void setAliasFor(Option &O) {
if (AliasFor)
@ -1737,10 +1741,6 @@ public:
AliasFor = &O;
}
// Command line options should not be copyable
alias(const alias &) LLVM_DELETED_FUNCTION;
alias &operator=(const alias &) LLVM_DELETED_FUNCTION;
// One option...
template <class M0t>
explicit alias(const M0t &M0)