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

--- Comment #10 from Patrick Palka <ppalka at gcc dot gnu.org> ---
Author: ppalka
Date: Tue Apr  5 16:40:00 2016
New Revision: 234753

URL: https://gcc.gnu.org/viewcvs?rev=234753&root=gcc&view=rev
Log:
Fix PR c++/70452 (regression in C++ parsing performance)

gcc/cp/ChangeLog:

        PR c++/70452
        * constexpr.c (struct fundef_copy): New struct.
        (struct fundef_copies_table_t): New struct.
        (fundef_copies_table): New static variable.
        (maybe_initialize_fundef_copies_table): New static function.
        (get_fundef_copy): New static function.
        (save_fundef_copy): New static function.
        (cxx_eval_call_expression): Use get_fundef_copy, and
        save_fundef_copy.
        (constexpr_call_table): Add "deletable" GTY marker.

gcc/testsuite/ChangeLog:

        PR c++/70452
        * g++.dg/ext/constexpr-vla4.C: New test.


Added:
    trunk/gcc/testsuite/g++.dg/ext/constexpr-vla4.C
Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/constexpr.c
    trunk/gcc/testsuite/ChangeLog

Reply via email to