This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: libstdc++/3759: nonconforming use of unqualified std:: names
Loren James Rittle <rittle@latour.rsch.comm.mot.com> writes:
| In article <010501c11465$8c0d7870$6701a8c0@abeast1.com>,
| "David Abrahams" <david.abrahams@rcn.com> writes:
|
| > I agree that 14.6.4 is not a relevant section. To violate anything in
| > section 14 there would have to be a core compiler bug. I don't believe there
| > is one. I think you have a library bug.
|
| I too believe that the core g++ compiler is working as required by
| 14.6.4 [temp.dep.res]. The reason I cited 14.6.4 in particular is
| that it explains the correct behavior of the compiler related to
| dependent name lookup in light of name spaces and templates. It is
| the *library* that violates 14.6.4 through its use of an unqualified
| name in the template implementation of a method that pulls a non-std
| name space...
No, as explained by Dave, the library didn't violate that rule
(14.6.4) -- that ruel can be used to explain why the library is
behaving that way, that at anyrate it didn't vilate that rule.
| Is my logic incorrect for citing 14.6.4? If so, which section(s)
| should be cited?
An unsopken rule which requires the library to adhere to the Principle
of Least Surprise.
-- Gaby
CodeSourcery, LLC http://www.codesourcery.com