gcc/libcpp
Jakub Jelinek fb136e35c7 re PR preprocessor/65238 (__has_attribute is not handled properly with -traditional-cpp.)
PR preprocessor/65238
	* internal.h (_cpp_scan_out_logical_line): Add third argument.
	* directives.c (prepare_directive_trad): Pass false to it.
	* traditional.c (_cpp_read_logical_line_trad,
	_cpp_create_trad_definition): Likewise.
	(struct fun_macro): Add paramc field.
	(fun_like_macro): New function.
	(maybe_start_funlike): Handle NODE_BUILTIN macros.  Initialize
	macro->paramc field.
	(save_argument): Use macro->paramc instead of
	macro->node->value.macro->paramc.
	(push_replacement_text): Formatting fix.
	(recursive_macro): Use fun_like_macro helper.
	(_cpp_scan_out_logical_line): Likewise.  Add BUILTIN_MACRO_ARG
	argument.  Initialize fmacro.paramc field.  Handle builtin
	function-like macros.

	* c-c++-common/cpp/pr65238-1.c: New test.
	* gcc.dg/cpp/pr65238-2.c: New test.
	* gcc.dg/cpp/trad/pr65238-3.c: New test.
	* gcc.dg/cpp/trad/pr65238-4.c: New test.

From-SVN: r221587
2015-03-23 09:02:39 +01:00
..
2015-01-05 13:33:28 +01:00
2015-02-25 16:08:20 +00:00
2015-01-05 13:33:28 +01:00
2015-01-05 13:33:28 +01:00
2015-01-05 13:33:28 +01:00
2015-01-05 13:33:28 +01:00
2015-01-05 13:33:28 +01:00
2015-01-05 13:33:28 +01:00
2015-01-05 13:33:28 +01:00
2015-01-05 13:33:28 +01:00
2015-01-05 13:33:28 +01:00
2015-01-05 13:33:28 +01:00
2015-01-05 13:33:28 +01:00
2015-01-05 13:33:28 +01:00
2015-01-05 13:33:28 +01:00
2015-01-05 13:33:28 +01:00
2015-01-05 13:33:28 +01:00