diff options
author | jakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4> | 2013-04-12 06:19:58 +0000 |
---|---|---|
committer | jakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4> | 2013-04-12 06:19:58 +0000 |
commit | 41609f8bc12a3e7feeaf7749a03f880e5b3c2819 (patch) | |
tree | 6c0949bd9c81eb35e9a104c1b13c71602bef3a0c /gcc/pretty-print.h | |
parent | 79f85ed59b356e24986dda057360c8782a652e69 (diff) | |
download | gcc-41609f8bc12a3e7feeaf7749a03f880e5b3c2819.tar.gz |
* opts.c: Include diagnostic-color.h.
(common_handle_option): Handle OPT_fdiagnostics_color_.
* Makefile.in (OBJS-libcommon): Add diagnostic-color.o.
(diagnostic.o, opts.o, pretty-print.o): Depend on diagnostic-color.h.
(diagnostic-color.o): New.
* common.opt (fdiagnostics-color, fdiagnostics-color=): New options.
(diagnostic_color_rule): New enum.
* dwarf2out.c (gen_producer_string): Don't print -fdiagnostics-color*.
* langhooks.c (lhd_print_error_function): Add %r "locus" and %R around
the location string.
* diagnostic.def: Add 3rd argument to DEFINE_DIAGNOSTIC_KIND macros,
either NULL, or color kind.
* diagnostic-color.c: New file.
* diagnostic-color.h: New file.
* diagnostic-core.h (DEFINE_DIAGNOSTIC_KIND): Adjust macro for 3
arguments.
* doc/invoke.texi (-fdiagnostics-color): Document.
* pretty-print.h (pp_show_color): Define.
(struct pretty_print_info): Add show_color field.
* diagnostic.c: Include diagnostic-color.h.
(diagnostic_build_prefix): Adjust for 3 argument DEFINE_DIAGNOSTIC_KIND
macros. Colorize error:, warning: etc. strings and also the location
string.
(diagnostic_show_locus): Colorize the caret line.
* pretty-print.c: Include diagnostic-color.h.
(pp_base_format): Handle %r and %R format specifiers. Colorize strings
inside of %< %> quotes or quoted through q format modifier.
c-family/
* c-format.c (gcc_diag_char_table, gcc_tdiag_char_table,
gcc_cdiag_char_table, gcc_cxxdiag_char_table): Add %r and %R format
specifiers.
cp/
* error.c (cp_print_error_function,
print_instantiation_partial_context_line,
maybe_print_constexpr_context): Colorize locus strings.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@197841 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/pretty-print.h')
-rw-r--r-- | gcc/pretty-print.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/pretty-print.h b/gcc/pretty-print.h index 56d2d3e8945..13bb2dede90 100644 --- a/gcc/pretty-print.h +++ b/gcc/pretty-print.h @@ -151,6 +151,9 @@ typedef bool (*printer_fn) (pretty_printer *, text_info *, const char *, output. */ #define pp_translate_identifiers(PP) pp_base (PP)->translate_identifiers +/* True if colors should be shown. */ +#define pp_show_color(PP) pp_base (PP)->show_color + /* The data structure that contains the bare minimum required to do proper pretty-printing. Clients may derived from this structure and add additional fields they need. */ @@ -194,6 +197,9 @@ struct pretty_print_info /* Nonzero means identifiers are translated to the locale character set on output. */ bool translate_identifiers; + + /* Nonzero means that text should be colorized. */ + bool show_color; }; #define pp_set_line_maximum_length(PP, L) \ |