This is the mail archive of the gcc-bugs@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]

[Bug c++/22621] [3.4/4.0/4.1 Regression] Member function overloading introduces syntax errors


------- Additional Comments From squell at alumina dot nl  2005-07-24 00:56 -------
(In reply to comment #4)
> > bar< ptr->f > a;  // ERROR: `->' cannot appear in constant expression
> > bar< &ptr->f > b; // ERROR: '>' missing in template argument
> No, both of those are invalid as -> cannot be in constant expression.

Correction: You're absolutely right! :) C++ simply disallows this
syntax because the template non-type argument must be of the form
"id-expression"  or "&id-expression".

It follows logically that the transformation I described shouldn't apply,
since it would produce ill-formed code anyway.

-- 


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


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