public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
* [Bug c++/60927] New: Ambiguity not caught when name introduced through using-directive conflicts with previously declared entity @ 2014-04-22 21:31 filip.roseen at gmail dot com 2014-04-22 22:27 ` [Bug c++/60927] " mbos at google dot com 2014-12-14 14:54 ` ville.voutilainen at gmail dot com 0 siblings, 2 replies; 3+ messages in thread From: filip.roseen at gmail dot com @ 2014-04-22 21:31 UTC (permalink / raw) To: gcc-bugs http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60927 Bug ID: 60927 Summary: Ambiguity not caught when name introduced through using-directive conflicts with previously declared entity Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: filip.roseen at gmail dot com Created attachment 32656 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=32656&action=edit testcase.cpp namespace N { namespace A { int x = 1; } } struct A { static int x; }; int main () { using namespace N; A::x = 123; } ---------------------------------------------------- `gcc` accepts the above even though there's an ambiguity between `N::A::x` and `A::x` when referenced as `A::x` in `main`. ------------------------------------------------------ [ note: `gcc` treats the `A::x` as referring to `N::A::x`. ] [ note: `clang` shows the correct behaviour and issues a diagnostic saying that `A::x` is ambiguous. ] ^ permalink raw reply [flat|nested] 3+ messages in thread
* [Bug c++/60927] Ambiguity not caught when name introduced through using-directive conflicts with previously declared entity 2014-04-22 21:31 [Bug c++/60927] New: Ambiguity not caught when name introduced through using-directive conflicts with previously declared entity filip.roseen at gmail dot com @ 2014-04-22 22:27 ` mbos at google dot com 2014-12-14 14:54 ` ville.voutilainen at gmail dot com 1 sibling, 0 replies; 3+ messages in thread From: mbos at google dot com @ 2014-04-22 22:27 UTC (permalink / raw) To: gcc-bugs http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60927 Maurice Bos <mbos at google dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |mbos at google dot com --- Comment #1 from Maurice Bos <mbos at google dot com> --- Some interesting related test cases: namespace N { struct A {}; } namespace A {} using namespace N; A * x; int main() {} G++ correctly complains about ambiguity. When the two lines with 'N' are removed, it complains that A is not a type. (As expected.) Very similar test case: #include <memory> namespace N { struct A {}; } namespace A {} using namespace N; std::unique_ptr<A> x; // Only this line is different. int main() {} G++ does not complain about ambiguity, but gives the same error as when the two lines with 'N' are removed. ^ permalink raw reply [flat|nested] 3+ messages in thread
* [Bug c++/60927] Ambiguity not caught when name introduced through using-directive conflicts with previously declared entity 2014-04-22 21:31 [Bug c++/60927] New: Ambiguity not caught when name introduced through using-directive conflicts with previously declared entity filip.roseen at gmail dot com 2014-04-22 22:27 ` [Bug c++/60927] " mbos at google dot com @ 2014-12-14 14:54 ` ville.voutilainen at gmail dot com 1 sibling, 0 replies; 3+ messages in thread From: ville.voutilainen at gmail dot com @ 2014-12-14 14:54 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60927 Ville Voutilainen <ville.voutilainen at gmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Last reconfirmed| |2014-12-14 CC| |ville.voutilainen at gmail dot com Ever confirmed|0 |1 Known to fail| |4.8.2, 4.9.1, 5.0 ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2014-12-14 14:54 UTC | newest] Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2014-04-22 21:31 [Bug c++/60927] New: Ambiguity not caught when name introduced through using-directive conflicts with previously declared entity filip.roseen at gmail dot com 2014-04-22 22:27 ` [Bug c++/60927] " mbos at google dot com 2014-12-14 14:54 ` ville.voutilainen at gmail dot com
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).