Opened 13 years ago
Closed 13 years ago
#3216 closed Bugs (fixed)
variable shadowing with possibly bad implications
Reported by: | Owned by: | chris_kohlhoff | |
---|---|---|---|
Milestone: | Boost 1.40.0 | Component: | asio |
Version: | Boost 1.39.0 | Severity: | Problem |
Keywords: | Cc: |
Description
we usually compile our code with -Wshadow using gcc; this usually reports lots of shadowing in the boost headers. Most of this is just annoying noise, but I've found one issue in the file boost_1_39_0/boost/asio/detail/reactive_socket_service.hpp where the name "ec" is used first as a reference parameter and then redeclared and used as a local variable. It seems to me that some of the uses after this point may have intended to save state back in the reference variable, so this code should be carefully reviewed. At the very least, some better variable names should be chosen so it's clear what the intended logic was.
I have a patch that renames both "ec" variables without changing the semantics of the code (attached).
Attachments (2)
Change History (5)
by , 13 years ago
Attachment: | ec-rename.patch added |
---|
comment:1 by , 13 years ago
Component: | None → asio |
---|---|
Owner: | set to |
by , 13 years ago
Attachment: | shadow-patches.txt added |
---|
Here's more patches that just renames variables to make -Wshadow silent.
comment:3 by , 13 years ago
Resolution: | → fixed |
---|---|
Status: | assigned → closed |
(In [54499]) Merge from trunk. Fixes #3095, #3216, #3098, #3107, #1341, #2754, #3157, #2620, #2618.
........
r54373 | chris_kohlhoff | 2009-06-26 21:03:14 +1000 (Fri, 26 Jun 2009) | 2 lines
Fix doc generation for array reference parameters.
........
r54376 | chris_kohlhoff | 2009-06-26 23:35:04 +1000 (Fri, 26 Jun 2009) | 2 lines
Fix bug in hash resize. Ref #3095.
........
r54377 | chris_kohlhoff | 2009-06-26 23:55:24 +1000 (Fri, 26 Jun 2009) | 3 lines
Remove a local variable that was hiding the ec parameter and preventing error codes from being correctly propagated. Ref #3216.
........
r54390 | chris_kohlhoff | 2009-06-27 12:17:49 +1000 (Sat, 27 Jun 2009) | 2 lines
Fix failures reported when the tests are built with _GLIBCXX_DEBUG. Ref #3098.
........
r54392 | chris_kohlhoff | 2009-06-27 15:24:16 +1000 (Sat, 27 Jun 2009) | 2 lines
Fix custom memory allocation for timers. Ref #3107.
........
r54393 | chris_kohlhoff | 2009-06-27 17:07:40 +1000 (Sat, 27 Jun 2009) | 2 lines
Fix various g++ warnings. Ref #1341.
........
r54400 | chris_kohlhoff | 2009-06-27 17:52:11 +1000 (Sat, 27 Jun 2009) | 4 lines
Use boost::throw_exception() rather than throw keyword to allow asio to be used when exception support is disabled. Note that the SSL wrappers still require exception support. Refs #2754.
........
r54407 | chris_kohlhoff | 2009-06-27 19:13:24 +1000 (Sat, 27 Jun 2009) | 2 lines
Make links to function overloads more obvious.
........
r54466 | chris_kohlhoff | 2009-06-28 23:07:43 +1000 (Sun, 28 Jun 2009) | 2 lines
Add header file information to reference docs. Refs #3157.
........
r54467 | chris_kohlhoff | 2009-06-28 23:20:17 +1000 (Sun, 28 Jun 2009) | 4 lines
Treat 0-byte reads and writes as no-ops to comply with the documented type requirements for SyncReadStream, AsyncReadStream, SyncWriteStream and AsyncWriteStream.
........
r54498 | chris_kohlhoff | 2009-06-29 19:32:41 +1000 (Mon, 29 Jun 2009) | 2 lines
Add enum values to doc index. Refs #2620.
........
patch