This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: C++ PATCH: PR 23293


Mark Mitchell <mark@codesourcery.com> writes:

> David Abrahams wrote:
>> Mark Mitchell <mark@codesourcery.com> writes:
>> 
>> 
>>>We've got multiple bug reports making the opposite complaint -- and,
>>>at least for the foreseeable future, you can't have both.  The
>>>problem is that the before-patch situation results in diagnostics
>>>that are downright wrong,
>> 
>> Example, please?
>
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23293

This one would be better if you only preserved namespace-scope
typedefs.

> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17763 is another example.

This one, too.

I might go a little further and drop namespace scope typedefs for
"simple" types like int.

>> That's very much like the current "with" clauses, ne?  I think it's a
>> big advantage to see memnonic template parameter names there, as in
>> "with" clauses, rather than the numbers.
>
> But, again, wrong in things like:
>
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=99

I fail to see how this very real problem:

theory.cc:22:                 double ch (dummy<0>, dummy<n>) [with unsigned int m = 0]
                                                   ^^^^^^^^
                                                       \__ INCORRECT


would be solved by using numbers instead of actual identifiers.  You'd
end up with something like:

theory.cc:22:                 double ch (dummy<0>, dummy<#1>) [with unsigned int #2 = 0]
                                                   ^^^^^^^^^
                                                       \__ STILL INCORRECT


-- 
Dave Abrahams
Boost Consulting
www.boost-consulting.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]