On 10/2/18 5:32 PM, Jeff Law wrote:
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 <mli...@suse.cz>
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 <mli...@suse.cz>
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 <mli...@suse.cz>
PR gcov-profile/86109
* g++.dg/gcov/pr86109.C: New test.
Hi.
Thanks for the review.
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.
Agree, well, then I would suggest to use DECL_LAMBDA_FUNCTION. The concept
of lambda functions is quite common in other programming languages.
Martin
jeff