diff options
author | NAKAMURA Takumi <geek4civic@gmail.com> | 2016-10-19 05:43:17 +0000 |
---|---|---|
committer | NAKAMURA Takumi <geek4civic@gmail.com> | 2016-10-19 05:43:17 +0000 |
commit | da9dc6ad84d865431d712f5af9d23e40382ab072 (patch) | |
tree | a07ed5889409231cb911815958f2c7d81ada2933 | |
parent | a4dc340cf2e52d909a1505e80a75e8e39caac8d1 (diff) | |
download | bcm5719-llvm-da9dc6ad84d865431d712f5af9d23e40382ab072.tar.gz bcm5719-llvm-da9dc6ad84d865431d712f5af9d23e40382ab072.zip |
DenseSet: Appease msc18 to define derived constructors explicitly.
msc18 doesn't recognize "using BaseT::BaseT;"
llvm\include\llvm/ADT/DenseSet.h(213) : error C2875: using-declaration causes a multiple declaration of 'BaseT'
llvm\include\llvm/ADT/DenseSet.h(214) : see reference to class template instantiation 'llvm::DenseSet<ValueT,ValueInfoT>' being compiled
llvm\include\llvm/ADT/DenseSet.h(231) : error C2875: using-declaration causes a multiple declaration of 'BaseT'
llvm\include\llvm/ADT/DenseSet.h(232) : see reference to class template instantiation 'llvm::SmallDenseSet<ValueT,InlineBuckets,ValueInfoT>' being compiled
llvm-svn: 284570
-rw-r--r-- | llvm/include/llvm/ADT/DenseSet.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/llvm/include/llvm/ADT/DenseSet.h b/llvm/include/llvm/ADT/DenseSet.h index b25d3b7cba6..a31c4da3a0e 100644 --- a/llvm/include/llvm/ADT/DenseSet.h +++ b/llvm/include/llvm/ADT/DenseSet.h @@ -210,7 +210,13 @@ class DenseSet : public detail::DenseSetImpl< ValueInfoT>; public: +#if defined(_MSC_VER) && _MSC_VER < 1900 + explicit DenseSet(unsigned InitialReserve = 0) + : DenseSetImpl(InitialReserve) {} + DenseSet(std::initializer_list<ValueT> Elems) : DenseSetImpl(Elems) {} +#else using BaseT::BaseT; +#endif }; /// Implements a dense probed hash-table based set with some number of buckets @@ -228,7 +234,13 @@ class SmallDenseSet ValueInfoT>; public: +#if defined(_MSC_VER) && _MSC_VER < 1900 + explicit SmallDenseSet(unsigned InitialReserve = 0) + : DenseSetImpl(InitialReserve) {} + SmallDenseSet(std::initializer_list<ValueT> Elems) : DenseSetImpl(Elems) {} +#else using BaseT::BaseT; +#endif }; } // end namespace llvm |