Boost logo

Boost :

From: Arkadiy Vertleyb (vertleyb_at_[hidden])
Date: 2005-05-30 07:05:59

"Alexander Nasonov" <alnsn-boost_at_[hidden]> wrot

> 1. BOOST_AUTO in reference section:
> "var a free identifier"
> - what is a free identifier? An identifier being defined?

> "expr a valid c++ expression that has a type"
> - Is there any valid C++ expression that has to type?

I do agree that the docs have yet to be polished in terms of terminology

> - Reference semantics explained in tutorial but it doesn't appear here.
> - Scope of var is not clear from the description.


> - expression returning void compiles fine in native mode but fails in
> compliant mode.

Well, this is just:

typeof(expr) var = expr;

I am surprized that it compiles in the native mode. Can a variable have the
type "void"?

> should be clear. My sample compiles in compliant mode even though
> inclusion is at class scope. Is it legal?

I think so. This is just a preprocessor thing -- no code gets generated.
The main thing is that the preprocessor should hit this line before it hits
any of registration macros in the same file.

> - I don't see any information on other non-type template parameters
> such as a pointer to member and a pointer/reference to object or
> function (14.1/4). Are they supported?

Only type, integral, and template template parameters are currently

> - "unsigned" implies int, 7.1/3

Right, but a C++ programmer can say "unsigned int" or "unsigned" with the
same effect, so we support the same, as we support the typename/class
alternative to denote type template parameters.

> I'm still reading the docs. Be prepared for other notes :)

Looking forward :-)


Boost list run by bdawes at, gregod at, cpdaniel at, john at