diff options
author | gdr <gdr@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-07-29 08:26:45 +0000 |
---|---|---|
committer | gdr <gdr@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-07-29 08:26:45 +0000 |
commit | b38e286c9b97107691417027ff2c6d784ab6bafd (patch) | |
tree | 2363601d56cb77885f5b17bf887c20e645e9de31 /gcc/pretty-print.h | |
parent | d0290aea25c362bc831a294386e8c9010f5903ea (diff) | |
download | gcc-b38e286c9b97107691417027ff2c6d784ab6bafd.tar.gz |
* pretty-print.h: Define more macros.
* diagnostic.h (output_formatted_integer): Moved from...
* diagnostic.c: ... here.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@55833 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/pretty-print.h')
-rw-r--r-- | gcc/pretty-print.h | 69 |
1 files changed, 44 insertions, 25 deletions
diff --git a/gcc/pretty-print.h b/gcc/pretty-print.h index a4ae280b1fa..d0e52deef8e 100644 --- a/gcc/pretty-print.h +++ b/gcc/pretty-print.h @@ -24,44 +24,63 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA #include "diagnostic.h" -typedef struct pretty_print_info pretty_print_info; - /* The type of pretty-printer flags passed to clients. */ typedef unsigned int pp_flags; -enum pp_padding +typedef enum { pp_none, pp_before, pp_after -}; +} pp_padding; struct pretty_print_info { - /* The entity to pretty-print. */ - tree entity; - pp_flags flags; - /* Where to put whitespace around the entity being formatted. */ - enum pp_padding padding; /* Where we print external representation of ENTITY. */ output_buffer *buffer; + pp_flags flags; + /* Where to put whitespace around the entity being formatted. */ + pp_padding padding; }; +#define pp_left_paren(PPI) output_add_character (pp_buffer (PPI), '(') +#define pp_right_paren(PPI) output_add_character (pp_buffer (PPI), ')') +#define pp_left_bracket(PPI) output_add_character (pp_buffer (PPI), '[') +#define pp_right_bracket(PPI) output_add_character (pp_buffer (PPI), ']') +#define pp_left_brace(PPI) output_add_character (pp_buffer (PPI), '{') +#define pp_right_brace(PPI) output_add_character (pp_buffer (PPI), '}') +#define pp_semicolon(PPI) output_add_character (pp_buffer (PPI), ';') +#define pp_comma(PPI) output_add_string (pp_buffer (PPI), ", ") +#define pp_dot(PPI) output_add_character (pp_buffer (PPI), '.') +#define pp_colon(PPI) output_add_character (pp_buffer (PPI), ':') +#define pp_colon_colon(PPI) output_add_string (pp_buffer (PPI), "::") +#define pp_arrow(PPI) output_add_string (pp_buffer (PPI), "->") +#define pp_star(PPI) output_add_character (pp_buffer (PPI), '*') +#define pp_quote(PPI) output_add_character (pp_buffer (PPI), '\'') +#define pp_backquote(PPI) output_add_character (pp_buffer (PPI), '`') +#define pp_doublequote(PPI) output_add_character (pp_buffer (PPI), '"') +#define pp_newline(PPI) output_add_newline (pp_buffer (PPI)) +#define pp_character(PPI, C) output_add_character (pp_buffer (PPI), C) +#define pp_whitespace(PPI) output_add_space (pp_buffer (PPI)) +#define pp_indentation(PPI) output_indentation (pp_buffer (PPI)) +#define pp_newline_and_indent(PPI, N) \ + do { \ + pp_indentation (PPI) += N; \ + pp_newline (PPI); \ + } while (0) +#define pp_separate_with(PPI, C) \ + do { \ + pp_character (PPI, C); \ + pp_whitespace (PPI); \ + } while (0) +#define pp_format_integer(PPI, F, I) \ + output_formatted_integer (pp_buffer (PPI), F, I) +#define pp_wide_integer(PPI, I) \ + pp_format_integer (PPI, HOST_WIDE_INT_PRINT_DEC, (HOST_WIDE_INT) I) -#define pp_sorry_for_unsupported_tree(PPI, T) \ - output_verbatim ((PPI)->buffer, "\nsorry: `%s' not supported by %s\n",\ - tree_code_name[(int) TREE_CODE (T)], __FUNCTION__) - -#define pp_left_paren(PPI) output_add_character ((PPI)->buffer, '(') -#define pp_right_paren(PPI) output_add_character ((PPI)->buffer, ')') -#define pp_left_bracket(PPI) output_add_character ((PPI)->buffer, '[') -#define pp_right_bracket(PPI) output_add_character ((PPI)->buffer, '[') -#define pp_semi_colon(PPI) output_add_character ((PPI)->buffer, ';') -#define pp_comma(PPI) output_add_string ((PPI)->buffer, ", ") -#define pp_dot(PPI) output_add_character ((PPI)->buffer, '.') -#define pp_colon(PPI) output_add_character ((PPI)->buffer, ':') -#define pp_colon_colon(PPI) output_add_string ((PPI)->buffer, "::") -#define pp_quote(PPI) output_add_character ((PPI)->buffer, '\'') -#define pp_backquote(PPI) output_add_character ((PPI)->buffer, '`') -#define pp_doublequote(PPI) output_add_character ((PPI)->buffer, '"') +#define pp_identifier(PPI, ID) output_add_string (pp_buffer (PPI), ID) +#define pp_tree_identifier(PPI, T) pp_identifier(PPI, IDENTIFIER_POINTER (T)) +#define pp_unsupported_tree(PPI, T) \ + output_verbatim (pp_buffer((PPI), "#`%s' not supported by %s#",\ + tree_code_name[(int) TREE_CODE (T)], __FUNCTION__) #endif /* GCC_PRETTY_PRINT_H */ |