Boost logo

Boost :

Subject: Re: [boost] Bug reports - Showstoppers and Regressions
From: Torsten Maehne (Torsten.Maehne_at_[hidden])
Date: 2012-01-19 13:47:29


Dear Gennadiy,

On Wed, 18 Jan 2012 17:07:19 +0000, Gennadiy Rozental wrote:

> Torsten Maehne <Torsten.Maehne <at> gmx.de> writes:
>
>
>> Dear Gennadiy,
>>
>> thanks for your response. This is the first response at all that I get
>> on ticket #6331.
>
> I've been closely tracking the progress on this ticket and related
> conversations.
>
>> I don't know either why the compiler sees the definition of
>> boost::unit_test::decorator::enable_if in namespace boost::type_of.
>
> I've been somewhat destructed around new year. Let me see if I can
> figure this out. Frankly I am at loss why would we see this conflict.
> Symbols are in completely different namespaces.

Thank you, it is good to know that you followed the development around
the ticket even though there wasn't any feedback in the trac indicating
it. It's true that I submitted the issue at a time of year, where people
often have more personal priorities. I can fully understand it. After
all, most of us contribute to open source projects in their free time. :-)

It would be great if you could figure out what goes wrong there. After
all, g++ is a very common compiler and even its latest versions seem to
be affected.

While digging into the issue, I came across the CHANGES document for g++
4.7.0 currently under development. It states

"G++ now correctly implements the two-phase lookup rules such that an
unqualified name used in a template must have an appropriate declaration
found either in scope at the point of definition of the template or by
argument-dependent lookup at the point of instantiation. As a result,
code that relies on a second unqualified lookup at the point of
instantiation to find functions declared after the template or in
dependent bases will be rejected. The compiler will suggest ways to fix
affected code, and using the -fpermissive compiler flag will allow the
code to compile with a warning."

<http://gcc.gnu.org/gcc-4.7/changes.html>

Could our problem be related?

I also found a meta-bug in gcc's bug tracker grouping currently known
problems around the name-lookup:

<http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18805>

I did not yet found the time to read in detail the referred bugs to see
whether there's a known issue resembling the problem at hand.

> Gennadiy

Best regards,

Torsten


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk