[Bug preprocessor/92296] [7/8/9 Regression] internal compiler error: Segmentation fault #pragma push_macro("__LINE__")

jakub at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Fri Nov 8 18:59:00 GMT 2019


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

--- Comment #15 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Author: jakub
Date: Fri Nov  8 18:59:14 2019
New Revision: 277987

URL: https://gcc.gnu.org/viewcvs?rev=277987&root=gcc&view=rev
Log:
        Backported from mainline
        2019-10-31  Jakub Jelinek  <jakub@redhat.com>

        PR preprocessor/92296
        * internal.h (struct def_pragma_macro): Add is_builtin bitfield.
        (_cpp_restore_special_builtin): Declare.
        * init.c (_cpp_restore_special_builtin): New function.
        * directives.c (do_pragma_push_macro): For NT_BUILTIN_MACRO
        set is_builtin and don't try to grab definition.
        (cpp_pop_definition): Use _cpp_restore_special_builtin to restore
        builtin macros.

        * c-c++-common/cpp/pr92296-1.c: New test.
        * c-c++-common/cpp/pr92296-2.c: New test.

Added:
    branches/gcc-9-branch/gcc/testsuite/c-c++-common/cpp/pr92296-1.c
    branches/gcc-9-branch/gcc/testsuite/c-c++-common/cpp/pr92296-2.c
Modified:
    branches/gcc-9-branch/gcc/testsuite/ChangeLog
    branches/gcc-9-branch/libcpp/ChangeLog
    branches/gcc-9-branch/libcpp/directives.c
    branches/gcc-9-branch/libcpp/init.c
    branches/gcc-9-branch/libcpp/internal.h


More information about the Gcc-bugs mailing list