This is the mail archive of the
libstdc++@gcc.gnu.org
mailing list for the libstdc++ project.
Re: [v3] pb_ds fixes for debug mode, valgrind
- From: Jonathan Wakely <jwakely dot gcc at gmail dot com>
- To: Benjamin Kosnik <bkoz at redhat dot com>
- Cc: "libstdc++" <libstdc++ at gcc dot gnu dot org>
- Date: Tue, 24 May 2011 08:51:44 +0100
- Subject: Re: [v3] pb_ds fixes for debug mode, valgrind
- References: <20110523191456.4fe42704@shotwell>
On 24 May 2011 03:14, Benjamin Kosnik wrote:
>
>
> There is a known issue WRT doxygen and figuring out
> template-metaprogrammed base types, discussed here:
> https://svn.boost.org/trac/boost/wiki/Guidelines/DoxygenGuidelines
Thanks for that link, I've been trying to deal with Doxygen's lack of
C++0x support myself.
Another issue not mentioned there is with a type such as:
typedef decltype(expr) type; ///< type
which gets doxydised as a function not a typedef (presumably because
of the parentheses.)
The trick I'm using for allocator_traits (where I'm making heavy use
of decltype) is:
private:
typedef decltype(expr) __type;
public:
typedef __type type; ///< type
The private type isn't documented, so the end result is pretty good -
seeing the complex decltype expression doesn't help users anyway.
For deleted functions I suggest:
/// Deleted copy constructor
foo(const foo&) = delete;
Otherwise doxygen just includes it with no indication it's deleted.
I suppose maybe we could not bother with that and assume Doxygen will
support deleted functions eventually.