Error Buddy

Do you have an error message from your application? Then find the answer with Error Buddy. You can search over 40000 source code files and troubleshooting documents using our beta lucene/nutch search interface or if you prefer, search as normal using google. With LXR technology you can drill right down into the line of source code where it came from with full cross-referencing.

If after searching you didn't get your ideal answer, or you are still unclear what the error means, you can choose to post that question to the community forums following the link included in the search results.

corestack/ gcc-3.3.3/ gcc/ c-pretty-print.h [1.6]
001 /* Various declarations for the C and C++ pretty-printers.
002    Copyright (C) 2002 Free Software Foundation, Inc.
003    Contributed by Gabriel Dos Reis <gdr@integrable-solutions.net>
004 
005 This file is part of GCC.
006 
007 GCC is free software; you can redistribute it and/or modify it under
008 the terms of the GNU General Public License as published by the Free
009 Software Foundation; either version 2, or (at your option) any later
010 version.
011 
012 GCC is distributed in the hope that it will be useful, but WITHOUT ANY
013 WARRANTY; without even the implied warranty of MERCHANTABILITY or
014 FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
015 for more details.
016 
017 You should have received a copy of the GNU General Public License
018 along with GCC; see the file COPYING.  If not, write to the Free
019 Software Foundation, 59 Temple Place - Suite 330, Boston, MA
020 02111-1307, USA.  */
021 
022 #ifndef GCC_C_PRETTY_PRINTER
023 #define GCC_C_PRETTY_PRINTER
024 
025 #include "tree.h"
026 #include "c-common.h"
027 #include "pretty-print.h"
028 
029 
030 /* The data type used to bundle information necessary for pretty-printing
031    a C or C++ entity.  */
032 typedef struct c_pretty_print_info *c_pretty_printer;
033 
034 /* The type of a C pretty-printer 'member' function.  */
035 typedef void (*c_pretty_print_fn) PARAMS ((c_pretty_printer, tree));
036 
037 struct c_pretty_print_info
038 {
039   struct pretty_print_info base;
040   /* Points to the first element of an array of offset-list.
041      Not used yet.  */
042   int *offset_list;
043 
044   /* These must be overriden by each of the C and C++ front-end to
045      reflect their understanding of syntatic productions when they differ.  */
046   c_pretty_print_fn declaration;
047   c_pretty_print_fn declaration_specifiers;
048   c_pretty_print_fn type_specifier;
049   c_pretty_print_fn declarator;
050   c_pretty_print_fn direct_declarator;
051   c_pretty_print_fn parameter_declaration;
052   c_pretty_print_fn type_id;
053 
054   c_pretty_print_fn statement;
055 
056   c_pretty_print_fn primary_expression;
057   c_pretty_print_fn postfix_expression;
058   c_pretty_print_fn unary_expression;
059   c_pretty_print_fn initializer;
060   c_pretty_print_fn multiplicative_expression;
061   c_pretty_print_fn conditional_expression;
062   c_pretty_print_fn assignment_expression;
063 };
064 
065 #define pp_c_left_paren(PPI)                       \
066    do {                                            \
067      pp_left_paren (PPI);                          \
068      pp_c_base (PPI)->base.padding = pp_none;      \
069    } while (0)
070 #define pp_c_right_paren(PPI)                      \
071    do {                                            \
072      pp_right_paren (PPI);                         \
073      pp_c_base (PPI)->base.padding = pp_none;      \
074    } while (0)
075 #define pp_c_left_bracket(PPI)                     \
076    do {                                            \
077      pp_left_bracket (PPI);                        \
078      pp_c_base (PPI)->base.padding = pp_none;      \
079    } while (0)
080 #define pp_c_right_bracket(PPI)                    \
081    do {                                            \
082      pp_right_bracket (PPI);                       \
083      pp_c_base (PPI)->base.padding = pp_none;      \
084    } while (0)
085 #define pp_c_whitespace(PPI)                       \
086    do {                                            \
087      pp_whitespace (PPI);                          \
088      pp_c_base (PPI)->base.padding = pp_none;      \
089    } while (0)
090 #define pp_c_maybe_whitespace(PPI)                 \
091    do {                                            \
092      if (pp_c_base (PPI)->base.padding != pp_none) \
093        pp_c_whitespace (PPI);                      \
094    } while (0)
095 #define pp_c_identifier(PPI, ID)                   \
096    do {                                            \
097      pp_c_maybe_whitespace (PPI);                  \
098      pp_identifier (PPI, ID);                      \
099      pp_c_base (PPI)->base.padding = pp_before;    \
100    } while (0)
101      
102 #define pp_c_tree_identifier(PPI, ID)              \
103    pp_c_identifier (PPI, IDENTIFIER_POINTER (ID))
104 
105 /* Returns the 'output_buffer *' associated with a PRETTY-PRINTER, the latter
106    being something digestible by pp_c_base.  */
107 #define pp_buffer(PPI) pp_c_base (PPI)->base.buffer
108 
109 #define pp_declaration(PPI, T)                    \
110    (*pp_c_base (PPI)->declaration) (pp_c_base (PPI), T)
111 #define pp_declaration_specifiers(PPI, D)         \
112    (*pp_c_base (PPI)->declaration_specifiers) (pp_c_base (PPI), D)
113 #define pp_type_specifier(PPI, D)                 \
114    (*pp_c_base (PPI)->type_specifier) (pp_c_base (PPI), D)
115 #define pp_declarator(PPI, D)                     \
116    (*pp_c_base (PPI)->declarator) (pp_c_base (PPI), D)
117 #define pp_direct_declarator(PPI, D)              \
118    (*pp_c_base (PPI)->direct_declarator) (pp_c_base (PPI), D)
119 #define pp_parameter_declaration(PPI, T)          \
120   (*pp_c_base (PPI)->parameter_declaration) (pp_c_base (PPI), T)
121 #define pp_type_id(PPI, D)                        \
122   (*pp_c_base (PPI)->type_id) (pp_c_base (PPI), D)
123 
124 #define pp_statement(PPI, S)                      \
125   (*pp_c_base (PPI)->statement) (pp_c_base (PPI), S)
126 
127 #define pp_primary_expression(PPI, E)             \
128   (*pp_c_base (PPI)->primary_expression) (pp_c_base (PPI), E)
129 #define pp_postfix_expression(PPI, E)             \
130   (*pp_c_base (PPI)->postfix_expression) (pp_c_base (PPI), E)
131 #define pp_unary_expression(PPI, E)               \
132   (*pp_c_base (PPI)->unary_expression) (pp_c_base (PPI), E)
133 #define pp_initializer(PPI, E)                    \
134   (*pp_c_base (PPI)->initializer) (pp_c_base (PPI), E)
135 #define pp_multiplicative_expression(PPI, E)      \
136    (*pp_c_base (PPI)->multiplicative_expression) (pp_c_base (PPI), E)
137 #define pp_conditional_expression(PPI, E)         \
138    (*pp_c_base (PPI)->conditional_expression) (pp_c_base (PPI), E)
139 #define pp_assignment_expression(PPI, E)          \
140    (*pp_c_base (PPI)->assignment_expression) (pp_c_base (PPI), E)
141 
142 
143 /* Returns the c_pretty_printer base object of PRETTY-PRINTER.  This
144    macro must be overriden by any subclass of c_pretty_print_info.  */
145 #define pp_c_base(PP)  (PP)
146 
147 extern void pp_c_pretty_printer_init   PARAMS ((c_pretty_printer));
148 
149 /* Declarations.  */
150 void pp_c_attributes                   PARAMS ((c_pretty_printer, tree));
151 void pp_c_cv_qualifier                 PARAMS ((c_pretty_printer, int));
152 void pp_c_parameter_declaration_clause PARAMS ((c_pretty_printer, tree));
153 void pp_c_declaration                  PARAMS ((c_pretty_printer, tree));
154 /* Statements.  */
155 void pp_c_statement                    PARAMS ((c_pretty_printer, tree));
156 /* Expressions.  */
157 void pp_c_expression                   PARAMS ((c_pretty_printer, tree));
158 void pp_c_logical_or_expression        PARAMS ((c_pretty_printer, tree));
159 void pp_c_expression_list              PARAMS ((c_pretty_printer, tree));
160 void pp_c_cast_expression              PARAMS ((c_pretty_printer, tree));
161 void pp_c_postfix_expression           PARAMS ((c_pretty_printer, tree));
162 void pp_c_initializer                  PARAMS ((c_pretty_printer, tree));
163 void pp_c_literal                      PARAMS ((c_pretty_printer, tree));
164 
165 #endif /* GCC_C_PRETTY_PRINTER */

Powered by Lucene and the LXR engine.