[Bug c++/96078] [10 Regression] flatten attribute on constructor and destructor causes spurious warning

cvs-commit at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Thu Mar 4 04:49:23 GMT 2021


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96078

--- Comment #6 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-10 branch has been updated by Jason Merrill
<jason@gcc.gnu.org>:

https://gcc.gnu.org/g:d455130553544ee838b5215e76ccad22304cde39

commit r10-9413-gd455130553544ee838b5215e76ccad22304cde39
Author: Jason Merrill <jason@redhat.com>
Date:   Thu Feb 11 22:01:19 2021 -0500

    cgraph: flatten and same_body aliases [PR96078]

    The patch for PR92372 made us start warning about a flatten attribute on an
    alias.  But in the case of C++ 'tor base/complete variants, the user didn't
    create the alias.  If the alias target also has the attribute, the alias
    points to a flattened function, so we shouldn't warn.

    gcc/ChangeLog:

            PR c++/96078
            * cgraphunit.c (process_function_and_variable_attributes): Don't
            warn about flatten on an alias if the target also has it.
            * cgraph.h (symtab_node::get_alias_target_tree): New.

    gcc/testsuite/ChangeLog:

            PR c++/96078
            * g++.dg/ext/attr-flatten1.C: New test.


More information about the Gcc-bugs mailing list