This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
r263600 - in /trunk: gcc/testsuite/ChangeLog gc...
- From: nathan at gcc dot gnu dot org
- To: gcc-cvs at gcc dot gnu dot org
- Date: Thu, 16 Aug 2018 19:18:42 -0000
- Subject: r263600 - in /trunk: gcc/testsuite/ChangeLog gc...
Author: nathan
Date: Thu Aug 16 19:18:42 2018
New Revision: 263600
URL: https://gcc.gnu.org/viewcvs?rev=263600&root=gcc&view=rev
Log:
[PATCH] Macro definition parameter parsing
https://gcc.gnu.org/ml/gcc-patches/2018-08/msg00977.html
libcpp/
* internal.h (_cpp_save_parameter): Take parmno, not macro.
(_cpp_unsave_parameters): Declare.
* macro.c (_cpp_save_parameter): Take parm number, not macro.
Return true on success.
(_cpp_unsave_parameters): New.
(parse_params): Take parm_no and variadic pointers, not macro.
Reimplement parsing logic.
(create_iso_definition): Adjust parse_params changes. Call
_cpp_unsave_parameters here.
(_cpp_create_definition): Don't unsave params here.
* traditional.c (scan_parameters): Take n_param pointer, adjust.
(_cpp_create_trad_definition): Ajust scan_parameters change. Call
_cpp_unsave_parameters.
gcc/testsuite/
* gcc.dg/cpp/macsyntx.c: Adjust expected errors.
* gcc.dg/cpp/macsyntx2.c: likewise.
Modified:
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/gcc.dg/cpp/macsyntx.c
trunk/gcc/testsuite/gcc.dg/cpp/macsyntx2.c
trunk/libcpp/ChangeLog
trunk/libcpp/internal.h
trunk/libcpp/macro.c
trunk/libcpp/traditional.c