On Dec 14, 2007 9:31 AM, brian m. carlson <[EMAIL PROTECTED]> wrote: > > Yeah. I can see why it's an error, but I'm not sure it's a prudent > thing to do. But basically, the rationale as I see it is that within a > scope, one name is supposed to refer to one type or symbol, and here it > refers to two, which is not allowed by GCC.
After a depressingly long interval with the delta-minimizer, I can now comprehend what you mean. This is a minimized version of the code within Monotone itself that provokes the error: class set; struct a_scalar { void set(set); }; My initial reaction was that the top-level 'class set' and the function 'a_scalar::set' are *not* in the same scope, but on further thinking, they are -- within 'struct a_scalar' itself. Is that right? If so I suppose I can justify changing the name of a_scalar::set. (We can't change the other one - that's really std::set, and taking out the using-declaration for it would make the rest of the code harder to read. a_scalar::set isn't used very much, so its name can change, I suppose.) I'm not inclined even to *attempt* this with the boost code - even if I could get it whittled down to something where I was able to see what was going on, I doubt I could figure out how that mapped back to a valid change within the original! zw _______________________________________________ Monotone-devel mailing list Monotone-devel@nongnu.org http://lists.nongnu.org/mailman/listinfo/monotone-devel