On Fri, Dec 07, 2012 at 10:13:11AM +0100, Matthias Klose wrote:
> Am 07.12.2012 06:05, schrieb Jason Merrill:
> > It's perfectly OK to initialize a base class of abstract type; it's only an
> > error to create a full object of such a type. So this patch moves the check
> > from more generic initialization code out into a function that's definitely
> > creating a new object.
> >
> > Tested x86_64-pc-linux-gnu, applying to trunk and 4.7.
>
> this doesn't build on the branch:
>
> ../gcc/cp/tree.c: In function 'build_aggr_init_expr':
> ../gcc/cp/tree.c:399:1: error: parameter name omitted
>
> this fixes the bootstrap, currently running the testsuite.
Please commit as obvious with appropriate ChangeLog entry.
> --- cp/tree.c~ 2012-12-07 10:01:16.665415647 +0100
> +++ cp/tree.c 2012-12-07 10:11:01.373410862 +0100
> @@ -396,7 +396,8 @@
> callable. */
>
> tree
> -build_aggr_init_expr (tree type, tree init, tsubst_flags_t /*complain*/)
> +build_aggr_init_expr (tree type, tree init,
> + tsubst_flags_t complain ATTRIBUTE_UNUSED)
> {
> tree fn;
> tree slot;
Jakub