Topic: DR257 Abstract base constructors and virtual base initialization


Author: aaronredname477@aaronwl.com ("Aaron W. LaFramboise")
Date: Mon, 5 Mar 2007 18:23:44 GMT
Raw View
DR257 has been open since 2000.  See
<http://www.open-std.org/JTC1/sc22/wg21/docs/cwg_active.html#257>.

What is stopping this DR from being quickly dealt with?

The suggested resolution, to specifically allow code as in that
example, is really the only reasonable resolution.  All of GCC,
Comeau, and MSVC do the opposite, so clarification is needed.

If omitting the initializers is specifically not allowed, which is the
case for these above compilers, there is a ridiculous state of affairs
where you have to make up dead code to satisfy the compiler.  For
cases where the parameter types of the base aren't simple, this can
actually be fairly painful to work around.  For example, the
intermediate derived class may not have the proper access to
instantiate objects of the initializer type.

Aaron W. LaFramboise

---
[ comp.std.c++ is moderated.  To submit articles, try just posting with ]
[ your news-reader.  If that fails, use mailto:std-c++@ncar.ucar.edu    ]
[              --- Please see the FAQ before posting. ---               ]
[ FAQ: http://www.comeaucomputing.com/csc/faq.html                      ]