> From: Gordon Vreugdenhil [mailto:gordonv@model.com] > Sent: Wednesday, June 20, 2007 9:44 AM > The second is exactly the situation I posted originally -- > when you parse C::T you don't know if you are referring to > "T" in the default specialization of C or whether you are > referring to the unspecialized name "T" in the parameterized > class for an extern method definition. > > And, as I also posted previously, you could require C#()::T > in such situations but that would be irregular with the > semantics of a reference to "C" in other type contexts. > I agree that this is a somewhat irregular, but all the proposals are somewhat irregular. In another context C::T would refer to the default value of T in class C, but C::get() in another context would be a static function call to the get() function in class C with default parameter values. We have no problem understanding that in the context of a function declaration C::get() means something different. If we want some special syntax rather than 'C::T' I would be ok with that, but I don't like 'C#()::T'. The C#() looks even more like C with default parameter values. Maybe 'C#::T' would be better. -- This message has been scanned for viruses and dangerous content by MailScanner, and is believed to be clean.Received on Wed Jun 20 10:37:58 2007
This archive was generated by hypermail 2.1.8 : Wed Jun 20 2007 - 10:38:18 PDT