Boost logo

Boost :

From: Arkadiy Vertleyb (vertleyb_at_[hidden])
Date: 2005-07-15 08:54:29


As I mentioned before, I don't think either way is perfect, and I don't even
know which one I like more. However, I would like to make a couple of
points, FWIW:

"Paul Mensonides" <pmenso57_at_[hidden]> wrote

> Except that in this case (the expression of a library feature), you're
severly
> underestimating a sound principle by letting it be outweighed by the
possibility
> of extra semicolons (which is quite possibly the easiest bug to fix of all
time)

I also think that extra semicolons is not a major problem, even if only
because most users (about 99%, I think) don't really care about portability.

> and by automatic formatting of some editors that many people use (but many
> people don't).

I don't think it is correct to say that many C++ programmers don't use
Visual C++, for example. It was already mentioned on this list at some
point that most people do, maybe as a secondary compiler. And, In Visual
Studio it is quite annoying to deal with constructs that do not adhere to
the C++ syntax.

> > > The problem that I have is not so much with catering to editors
> > > (though I am against that in principle), but with catering to an
> > > incorrect viewpoint.

And this viewpoint is that a macro invocation is a function call? I am not
sure about Dave's case, but I am more concerned about the case when a macro
expands into a number of template specializations. So, when I am saying:

REGISTER_TYPE(x)

it is actually:

GENERATE_RELEVANT_TEMPLATE_SPECIALIZATIONS_FOR_TYPE(x)

Do you think requiring a semicolon would be incorrect here?

Regards,
Arkadiy


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk