This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug libstdc++/27340] valarray uses __cos which may conflict with libm functions
- From: "gdr at integrable-solutions dot net" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 1 May 2006 23:39:58 -0000
- Subject: [Bug libstdc++/27340] valarray uses __cos which may conflict with libm functions
- References: <bug-27340-6008@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #7 from gdr at integrable-solutions dot net 2006-05-01 23:39 -------
Subject: Re: valarray uses __cos which may conflict with libm functions
"marc dot glisse at normalesup dot org" <gcc-bugzilla@gcc.gnu.org> writes:
| (In reply to comment #4)
| > Should all those private classes and functions be declared in some
| > specific namespace std::glibcxx_private to have a single point of failure?
|
| Oups, I just noticed that was one of the roles of __gnu_cxx (although I don't
| understand why this namespace is not a subnamespace of std:: as tr1 (or at
| least contains a using namespace std;),
Why shall it?
Before people suggest more tricky playing with libstdc++ name spaces,
I would recommand people understand that namespaces are not silver bullet
against machivelic playing with names.
| which would at the same time fix things
| like getenv not being prefixed by std:: in ext/mt_allocator.h).
That is a separate problem that does not require namespace nesting.
Nesting namespaces does not come for free. You really need to
understand its consequences (name lookp, overload resolution, etc.)
before proposing it.
-- Gaby
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27340