On 9/12/18 6:39 AM, Martin Liška wrote: > Hi. > > This is follow-up of: > https://gcc.gnu.org/ml/gcc/2018-08/msg00007.html > > I've chosen to implement that with new DECL_CXX_LAMBDA_FUNCTION that > uses an empty bit in tree_function_decl. > > Patch can bootstrap on ppc64le-redhat-linux and survives regression tests. > > Ready for trunk? > > gcc/ChangeLog: > > 2018-09-12 Martin Liska <[email protected]> > > PR gcov-profile/86109 > * coverage.c (coverage_begin_function): Do not > mark lambdas as artificial. > * tree-core.h (struct GTY): Remove tm_clone_flag > and introduce new lambda_function. > * tree.h (DECL_CXX_LAMBDA_FUNCTION): New macro. > > gcc/cp/ChangeLog: > > 2018-09-12 Martin Liska <[email protected]> > > PR gcov-profile/86109 > * parser.c (cp_parser_lambda_declarator_opt): > Set DECL_CXX_LAMBDA_FUNCTION for lambdas. > > gcc/testsuite/ChangeLog: > > 2018-09-12 Martin Liska <[email protected]> > > PR gcov-profile/86109 > * g++.dg/gcov/pr86109.C: New test. So the concern here is C++-isms bleeding into the language independent nodes. I think a name change from DECL_CXX_LAMBDA_FUNCTION to something else would be enough to go forward.
jeff
