File tree Expand file tree Collapse file tree 2 files changed +15
-3
lines changed
Expand file tree Collapse file tree 2 files changed +15
-3
lines changed Original file line number Diff line number Diff line change @@ -141,7 +141,13 @@ class string_impl
141141 std::random_access_iterator_tag)
142142 : string_impl(last - first, sp)
143143 {
144- std::copy (first, last, data ());
144+ char * out = data ();
145+ #if defined(_MSC_VER) && _MSC_VER <= 1900
146+ while ( first != last )
147+ *out++ = *first++;
148+ #else
149+ std::copy (first, last, out);
150+ #endif
145151 }
146152
147153 template <class InputIt >
Original file line number Diff line number Diff line change @@ -194,10 +194,16 @@ append(
194194 InputIt last,
195195 std::random_access_iterator_tag)
196196{
197+
197198 auto const n = static_cast <
198199 size_type>(last - first);
199- std::copy (first, last,
200- impl_.append (n, sp_));
200+ char * out = impl_.append (n, sp_);
201+ #if defined(_MSC_VER) && _MSC_VER <= 1900
202+ while ( first != last )
203+ *out++ = *first++;
204+ #else
205+ std::copy (first, last, out);
206+ #endif
201207}
202208
203209template <class InputIt >
You can’t perform that action at this time.
0 commit comments