Fix some shadow warnings.
diff --git a/asio/include/asio/detail/impl/strand_executor_service.ipp b/asio/include/asio/detail/impl/strand_executor_service.ipp
index 6241b4a..190c186 100644
--- a/asio/include/asio/detail/impl/strand_executor_service.ipp
+++ b/asio/include/asio/detail/impl/strand_executor_service.ipp
@@ -23,8 +23,8 @@
 namespace asio {
 namespace detail {
 
-strand_executor_service::strand_executor_service(execution_context& context)
-  : execution_context_service_base<strand_executor_service>(context),
+strand_executor_service::strand_executor_service(execution_context& ctx)
+  : execution_context_service_base<strand_executor_service>(ctx),
     mutex_(),
     salt_(0),
     impl_list_(0)
diff --git a/asio/include/asio/impl/read_until.hpp b/asio/include/asio/impl/read_until.hpp
index cdada8a..29feb14 100644
--- a/asio/include/asio/impl/read_until.hpp
+++ b/asio/include/asio/impl/read_until.hpp
@@ -230,10 +230,10 @@
     // Determine the range of the data to be searched.
     typedef typename DynamicBufferSequence::const_buffers_type buffers_type;
     typedef buffers_iterator<buffers_type> iterator;
-    buffers_type buffers = b.data();
-    iterator begin = iterator::begin(buffers);
+    buffers_type data_buffers = b.data();
+    iterator begin = iterator::begin(data_buffers);
     iterator start_pos = begin + search_position;
-    iterator end = iterator::end(buffers);
+    iterator end = iterator::end(data_buffers);
 
     // Look for a match.
     boost::match_results<iterator,
@@ -476,10 +476,10 @@
             typedef typename DynamicBufferSequence::const_buffers_type
               buffers_type;
             typedef buffers_iterator<buffers_type> iterator;
-            buffers_type buffers = buffers_.data();
-            iterator begin = iterator::begin(buffers);
+            buffers_type data_buffers = buffers_.data();
+            iterator begin = iterator::begin(data_buffers);
             iterator start_pos = begin + search_position_;
-            iterator end = iterator::end(buffers);
+            iterator end = iterator::end(data_buffers);
 
             // Look for a match.
             iterator iter = std::find(start_pos, end, delim_);
@@ -718,10 +718,10 @@
             typedef typename DynamicBufferSequence::const_buffers_type
               buffers_type;
             typedef buffers_iterator<buffers_type> iterator;
-            buffers_type buffers = buffers_.data();
-            iterator begin = iterator::begin(buffers);
+            buffers_type data_buffers = buffers_.data();
+            iterator begin = iterator::begin(data_buffers);
             iterator start_pos = begin + search_position_;
-            iterator end = iterator::end(buffers);
+            iterator end = iterator::end(data_buffers);
 
             // Look for a match.
             std::pair<iterator, bool> result = detail::partial_search(
@@ -973,10 +973,10 @@
             typedef typename DynamicBufferSequence::const_buffers_type
               buffers_type;
             typedef buffers_iterator<buffers_type> iterator;
-            buffers_type buffers = buffers_.data();
-            iterator begin = iterator::begin(buffers);
+            buffers_type data_buffers = buffers_.data();
+            iterator begin = iterator::begin(data_buffers);
             iterator start_pos = begin + search_position_;
-            iterator end = iterator::end(buffers);
+            iterator end = iterator::end(data_buffers);
 
             // Look for a match.
             boost::match_results<iterator,
@@ -1232,10 +1232,10 @@
             typedef typename DynamicBufferSequence::const_buffers_type
               buffers_type;
             typedef buffers_iterator<buffers_type> iterator;
-            buffers_type buffers = buffers_.data();
-            iterator begin = iterator::begin(buffers);
+            buffers_type data_buffers = buffers_.data();
+            iterator begin = iterator::begin(data_buffers);
             iterator start_pos = begin + search_position_;
-            iterator end = iterator::end(buffers);
+            iterator end = iterator::end(data_buffers);
 
             // Look for a match.
             std::pair<iterator, bool> result = match_condition_(start_pos, end);