Skip to content
Snippets Groups Projects
  • Joseph Myers's avatar
    93d45d9e
    cppopts.texi (-dU): Document. · 93d45d9e
    Joseph Myers authored
    gcc:
    	* doc/cppopts.texi (-dU): Document.
    	* c-common.h (flag_dump_macros): Update comment.
    	* c-opts.c (handle_OPT_d): Handle -dU.
    	* c-ppoutput.c (macro_queue, define_queue, undef_queue,
    	dump_queued_macros, cb_used_define, cb_used_undef): New.
    	(init_pp_output): Handle -dU.
    	(cb_line_change): Call dump_queued_macros.
    	* toplev.c (decode_d_option): Accept -dU as preprocessor option.
    
    gcc/testsuite:
    	* gcc.dg/cpp/cmdlne-dU-1.c, gcc.dg/cpp/cmdlne-dU-2.c,
    	gcc.dg/cpp/cmdlne-dU-3.c, gcc.dg/cpp/cmdlne-dU-4.c,
    	gcc.dg/cpp/cmdlne-dU-5.c, gcc.dg/cpp/cmdlne-dU-6.c,
    	gcc.dg/cpp/cmdlne-dU-7.c, gcc.dg/cpp/cmdlne-dU-8.c,
    	gcc.dg/cpp/cmdlne-dU-9.c, gcc.dg/cpp/cmdlne-dU-10.c,
    	gcc.dg/cpp/cmdlne-dU-11.c, gcc.dg/cpp/cmdlne-dU-12.c,
    	gcc.dg/cpp/cmdlne-dU-13.c, gcc.dg/cpp/cmdlne-dU-14.c,
    	gcc.dg/cpp/cmdlne-dU-15.c, gcc.dg/cpp/cmdlne-dU-16.c,
    	gcc.dg/cpp/cmdlne-dU-17.c, gcc.dg/cpp/cmdlne-dU-18.c,
    	gcc.dg/cpp/cmdlne-dU-19.c, gcc.dg/cpp/cmdlne-dU-20.c,
    	gcc.dg/cpp/cmdlne-dU-21.c, gcc.dg/cpp/cmdlne-dU-22.c: New tests.
    
    libcpp:
    	* include/cpplib.h (struct cpp_callbacks): Add used_define,
    	used_undef and before_define.
    	(NODE_USED): Define.
    	* directives.c (do_define, do_undef, undefine_macros, do_ifdef,
    	do_ifndef, cpp_pop_definition): Handle new flag and use new
    	callbacks.
    	* expr.c (parse_defined): Handle new flag and use new callbacks.
    	* macro.c (enter_macro_context, _cpp_free_definition): Handle new
    	flag and use new callbacks.
    
    From-SVN: r133847
    93d45d9e
    History
    cppopts.texi (-dU): Document.
    Joseph Myers authored
    gcc:
    	* doc/cppopts.texi (-dU): Document.
    	* c-common.h (flag_dump_macros): Update comment.
    	* c-opts.c (handle_OPT_d): Handle -dU.
    	* c-ppoutput.c (macro_queue, define_queue, undef_queue,
    	dump_queued_macros, cb_used_define, cb_used_undef): New.
    	(init_pp_output): Handle -dU.
    	(cb_line_change): Call dump_queued_macros.
    	* toplev.c (decode_d_option): Accept -dU as preprocessor option.
    
    gcc/testsuite:
    	* gcc.dg/cpp/cmdlne-dU-1.c, gcc.dg/cpp/cmdlne-dU-2.c,
    	gcc.dg/cpp/cmdlne-dU-3.c, gcc.dg/cpp/cmdlne-dU-4.c,
    	gcc.dg/cpp/cmdlne-dU-5.c, gcc.dg/cpp/cmdlne-dU-6.c,
    	gcc.dg/cpp/cmdlne-dU-7.c, gcc.dg/cpp/cmdlne-dU-8.c,
    	gcc.dg/cpp/cmdlne-dU-9.c, gcc.dg/cpp/cmdlne-dU-10.c,
    	gcc.dg/cpp/cmdlne-dU-11.c, gcc.dg/cpp/cmdlne-dU-12.c,
    	gcc.dg/cpp/cmdlne-dU-13.c, gcc.dg/cpp/cmdlne-dU-14.c,
    	gcc.dg/cpp/cmdlne-dU-15.c, gcc.dg/cpp/cmdlne-dU-16.c,
    	gcc.dg/cpp/cmdlne-dU-17.c, gcc.dg/cpp/cmdlne-dU-18.c,
    	gcc.dg/cpp/cmdlne-dU-19.c, gcc.dg/cpp/cmdlne-dU-20.c,
    	gcc.dg/cpp/cmdlne-dU-21.c, gcc.dg/cpp/cmdlne-dU-22.c: New tests.
    
    libcpp:
    	* include/cpplib.h (struct cpp_callbacks): Add used_define,
    	used_undef and before_define.
    	(NODE_USED): Define.
    	* directives.c (do_define, do_undef, undefine_macros, do_ifdef,
    	do_ifndef, cpp_pop_definition): Handle new flag and use new
    	callbacks.
    	* expr.c (parse_defined): Handle new flag and use new callbacks.
    	* macro.c (enter_macro_context, _cpp_free_definition): Handle new
    	flag and use new callbacks.
    
    From-SVN: r133847