[Bug c++/49399] [C++0x] substitution failure error

jarrydb at cse dot unsw.edu.au gcc-bugzilla@gcc.gnu.org
Tue Jun 14 12:35:00 GMT 2011


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49399

--- Comment #8 from Jarryd Beck <jarrydb at cse dot unsw.edu.au> 2011-06-14 12:35:31 UTC ---
(In reply to comment #7)
> (In reply to comment #6)
> > (In reply to comment #4)
> > > Ah, I see. Well the example you gave also doesn't compile. This is exactly what
> > > the boost library does too, I missed that part in their code, meaning that
> > > parts of boost no longer compile with gcc 4.7.
> > 
> > And I know it doesn't, as I said "G++ doesn't accept it because access checking
> > is not done as part of the substitution process yet."
> > 
> > Even when that's done, it will only be valid C++0x not, C++03.
> 
> Ok, I thought that was what you meant. Does this however mean that this bug is
> now valid for C++0x, given what they say in the link that you gave?
> 
> "If a substitution results in an invalid type or expression, type deduction
> fails. An invalid type or expression is one that would be ill-formed if written
> using the substituted arguments. [Note: Access checking is not done as part of
> the substitution process. —end note]"
> 
> Should a bug for the reverse also be filed for the C++03 part of gcc? I wonder
> what boost mpl people would say about a bug report since this actually works
> even though it's wrong...

Sorry that should be access checking is done. This text entry didn't preserve
the strike through of the not.



More information about the Gcc-bugs mailing list