-
Notifications
You must be signed in to change notification settings - Fork 912
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove 'using namespace' from condition_variable.h #2020
Remove 'using namespace' from condition_variable.h #2020
Conversation
Signed-off-by: Emerson Knapp <eknapp@amazon.com>
@meyerj @dirk-thomas requesting review |
Thanks for the patch. |
Thanks for the patch. I assumed that |
The problem wasn't really about precedence - it's about whether a name can be resolved to a single definition. A simplified example:
The problem is that the header is affected by the global namespace - a .cpp compilation unit would not have caused an issue here. Basically the moral of the story is that you probably shouldn't ever Anyways, we're all good now. Cheers! |
For reasons I can't fully explain, this is breaking downstream consumers. One example is http://build.ros.org/view/Mbin_uB64/job/Mbin_uB64__grid_map_rviz_plugin__ubuntu_bionic_amd64__binary/37/console , where It looks like somehow the I'm going to be posting a patch presently which fully qualifies the |
Oh, I guess there is a |
Signed-off-by: Emerson Knapp <eknapp@amazon.com>
Modify #1932 to not have
using namespace
in the header. It was causing downstream build failures in a project that included a library that didusing namespace std::chrono;
in its header at the global scope. That's terrible practice that this library has done such a thing, but the build had been working before #1932, so this fix will help our package and harm no one.