osprey/kg++fe/tree_verify.cxx File Reference

#include "gnu_config.h"
#include <assert.h>
#include <limits.h>
#include <stdio.h>
#include "gnu/tree.h"
#include "cp-tree.h"
#include <hash_map>
#include <hash_set>
#include <vector>

Include dependency graph for tree_verify.cxx:

Go to the source code of this file.

Data Types

type  void_ptr_hash

Enumerations

enum  scope { namespace_scope, class_scope, function_scope }

Functions/Subroutines

void verify_namespace (tree ns)
void verify_global_namespace (tree ns)
void verify_decl (tree decl, scope sc)
void verify_template_decl (tree decl, scope sc)
void verity_overload (tree ovl)
const char * verify_identifier (tree id)
const char * verity_ordinary_identifier (tree id)
void verify_function (tree fn)
void verify_ctor_initializer (tree ctor)
void verify_overload (tree fn, tree ns)
tree verify_label_decl (tree)
void verify_const_decl (tree)
void verify_var_decl (tree)
void verify_parm_decl (tree)
void verify_field_decl (tree)
void verify_expr (tree expr)
void verify_integer_cst (tree)
void verify_string_cst (tree)
void verify_simple_string_cst (tree)
void verify_ptrmem_cst (tree)
void verify_negate_expr (tree)
void verify_bit_not_expr (tree)
void verify_truth_not_expr (tree)
void verify_incr_or_decr (tree)
void verify_addr_expr (tree)
void verify_indirect_ref (tree)
void verify_trunc_expr (tree)
void verify_float_expr (tree)
void verify_nop_expr (tree)
void verify_convert_expr (tree)
void verify_throw_expr (tree)
void verify_shift_expr (tree)
void verify_bitwise_binary_op (tree)
void verify_logical_binary_op (tree)
void verify_arithmetic_binary_op (tree)
void verify_comparison (tree)
void verify_modify_expr (tree)
void verify_component_ref (tree)
void verify_compound_expr (tree)
void verify_cond_expr (tree)
void verify_call_expr (tree)
void verify_bind_expr (tree)
void verify_constructor_expr (tree)
void verify_init_expr (tree)
void verify_save_expr (tree)
void verify_target_expr (tree)
void verify_array_ref (tree)
bool is_expr_code (tree_code)
void verify_statement (tree stmt)
void verify_asm_statement (tree)
void verify_case_label (tree)
void verify_decl_statement (tree)
void verify_var_decl_statement (tree)
void verify_do_statement (tree)
void verify_for_statement (tree)
void verify_goto_statement (tree)
void verify_if_statement (tree)
void verify_return_statement (tree)
void verify_switch_statement (tree)
void verify_try_block (tree)
void verify_while_statement (tree)
void verify_compound_statement (tree stmt)
void verify_cleanup_statement (tree)
void verify_scope_statement (tree)
void verify_controlling_expr (tree parent, tree t)
void verify_type (tree type)
void verify_integer_type (tree)
void verify_real_type (tree)
void verify_complex_type (tree)
void verify_enumeral_type (tree)
void verify_pointer_type (tree)
void verify_reference_type (tree)
void verify_function_type (tree)
void verify_method_type (tree)
void verify_function_arguments (tree)
void verify_array_type (tree)
void verify_class_type (tree)
const char * verify_named_type (tree)
void verify_type_name_is (tree, const char *)
const char * verify_ordinary_identifier (tree)
tree ancestor_is_function (tree)
bool ancestor_is_loop (tree)
bool ancestor_is_switch (tree)
bool is_integral_type (tree)
bool is_numeric_scalar_type (tree)
bool is_integral_constant_expression (tree)
unsigned long integer_cst_remainder (tree a, unsigned long N)
bool integer_cst_le (size_t x, tree y)
tree get_parent (tree)
tree get_parent_or_null (tree)
void verify_parentless (tree)
void add_child_to_map (tree parent, tree child)
bool tree_node_already_seen (tree)
void mark_tree_node_as_seen (tree)

Variables

std::hash_map< tree, tree,
void_ptr_hash
parent_map
std::hash_set< tree,
void_ptr_hash
seen_map


Enumeration Type Documentation

enum scope

Enumerator:
namespace_scope 
class_scope 
function_scope 

Definition at line 55 of file tree_verify.cxx.


Function Documentation

void add_child_to_map ( tree  parent,
tree  child 
)

tree ancestor_is_function ( tree  t  ) 

bool ancestor_is_loop ( tree  t  ) 

Definition at line 2738 of file tree_verify.cxx.

References c, cur, get_parent(), NULL_TREE, and TREE_CODE.

Referenced by verify_statement().

bool ancestor_is_switch ( tree  t  ) 

Definition at line 2760 of file tree_verify.cxx.

References c, cur, get_parent(), NULL_TREE, and TREE_CODE.

Referenced by verify_case_label(), and verify_statement().

tree get_parent ( tree  t  ) 

tree get_parent_or_null ( tree  t  ) 

bool integer_cst_le ( size_t  x,
tree  y 
)

unsigned long integer_cst_remainder ( tree  a,
unsigned long  N 
)

bool is_expr_code ( tree_code  code  ) 

Definition at line 2059 of file tree_verify.cxx.

References TREE_CODE_CLASS.

Referenced by verify_cleanup_statement(), verify_expr(), and verify_var_decl().

bool is_integral_constant_expression ( tree  expr  ) 

Definition at line 2791 of file tree_verify.cxx.

References assert, is_integral_type(), NULL_TREE, TREE_CONSTANT, and TREE_TYPE.

Referenced by verify_case_label().

bool is_integral_type ( tree  type  ) 

bool is_numeric_scalar_type ( tree  type  ) 

void mark_tree_node_as_seen ( tree  t  ) 

Definition at line 2668 of file tree_verify.cxx.

References seen_map.

Referenced by verify_class_type(), and verify_function().

bool tree_node_already_seen ( tree  t  ) 

Definition at line 2663 of file tree_verify.cxx.

References seen_map.

Referenced by verify_class_type(), and verify_function().

void verify_addr_expr ( tree  expr  ) 

void verify_arithmetic_binary_op ( tree  expr  ) 

void verify_array_ref ( tree  expr  ) 

Definition at line 2036 of file tree_verify.cxx.

References assert, index(), NULL_TREE, TREE_CODE, TREE_OPERAND, TREE_TYPE, and verify_expr().

Referenced by verify_expr().

void verify_array_type ( tree  type  ) 

void verify_asm_statement ( tree  st  ) 

void verify_bind_expr ( tree  expr  ) 

Definition at line 1862 of file tree_verify.cxx.

References assert, NULL_TREE, and TREE_CODE.

Referenced by verify_expr().

void verify_bit_not_expr ( tree  expr  ) 

void verify_bitwise_binary_op ( tree  expr  ) 

void verify_call_expr ( tree  expr  ) 

Definition at line 1831 of file tree_verify.cxx.

References args, assert, cur, fptr, NULL_TREE, TREE_CHAIN, TREE_CODE, TREE_OPERAND, TREE_TYPE, TREE_VALUE, and verify_expr().

Referenced by verify_expr().

void verify_case_label ( tree  st  ) 

void verify_class_type ( tree  type  ) 

void verify_cleanup_statement ( tree  st  ) 

void verify_comparison ( tree  expr  ) 

void verify_complex_type ( tree  type  ) 

Definition at line 2217 of file tree_verify.cxx.

References assert, COMPLEX_TYPE, NULL_TREE, and TREE_CODE.

Referenced by verify_type().

void verify_component_ref ( tree  expr  ) 

Definition at line 1756 of file tree_verify.cxx.

References assert, NULL_TREE, TREE_CODE, TREE_OPERAND, TREE_TYPE, verify_expr(), and verify_field_decl().

Referenced by verify_expr().

void verify_compound_expr ( tree  expr  ) 

Definition at line 1782 of file tree_verify.cxx.

References assert, NULL_TREE, same_type_p, TREE_CODE, TREE_OPERAND, TREE_TYPE, and verify_expr().

Referenced by verify_expr().

void verify_compound_statement ( tree  stmt  ) 

void verify_cond_expr ( tree  expr  ) 

void verify_const_decl ( tree  decl  ) 

void verify_constructor_expr ( tree  expr  ) 

void verify_controlling_expr ( tree  parent,
tree  t 
)

void verify_convert_expr ( tree  expr  ) 

Definition at line 1571 of file tree_verify.cxx.

References assert, NULL_TREE, TREE_CODE, TREE_OPERAND, and verify_expr().

Referenced by verify_expr().

void verify_ctor_initializer ( tree  ctor  ) 

void verify_decl ( tree  decl,
scope  sc 
)

void verify_decl_statement ( tree  st  ) 

void verify_do_statement ( tree  st  ) 

void verify_enumeral_type ( tree  type  ) 

void verify_expr ( tree  expr  ) 

Definition at line 1130 of file tree_verify.cxx.

References assert, fprintf(), is_expr_code(), NULL_TREE, TREE_CODE, TREE_TYPE, verify_addr_expr(), verify_arithmetic_binary_op(), verify_array_ref(), verify_bind_expr(), verify_bit_not_expr(), verify_bitwise_binary_op(), verify_call_expr(), verify_comparison(), verify_component_ref(), verify_compound_expr(), verify_cond_expr(), verify_constructor_expr(), verify_convert_expr(), verify_float_expr(), verify_incr_or_decr(), verify_indirect_ref(), verify_init_expr(), verify_integer_cst(), verify_logical_binary_op(), verify_modify_expr(), verify_negate_expr(), verify_nop_expr(), verify_parm_decl(), verify_ptrmem_cst(), verify_save_expr(), verify_shift_expr(), verify_string_cst(), verify_target_expr(), verify_throw_expr(), verify_trunc_expr(), verify_truth_not_expr(), verify_type(), and verify_var_decl().

Referenced by verify_addr_expr(), verify_arithmetic_binary_op(), verify_array_ref(), verify_bit_not_expr(), verify_bitwise_binary_op(), verify_call_expr(), verify_case_label(), verify_cleanup_statement(), verify_comparison(), verify_component_ref(), verify_compound_expr(), verify_cond_expr(), verify_constructor_expr(), verify_controlling_expr(), verify_convert_expr(), verify_float_expr(), verify_for_statement(), verify_function_arguments(), verify_goto_statement(), verify_incr_or_decr(), verify_indirect_ref(), verify_logical_binary_op(), verify_modify_expr(), verify_negate_expr(), verify_nop_expr(), verify_return_statement(), verify_shift_expr(), verify_stmt(), verify_stmts(), verify_target_expr(), verify_throw_expr(), verify_trunc_expr(), verify_truth_not_expr(), and verify_var_decl().

void verify_field_decl ( tree  decl  ) 

void verify_float_expr ( tree  expr  ) 

Definition at line 1543 of file tree_verify.cxx.

References assert, is_integral_type(), NULL_TREE, TREE_CODE, TREE_OPERAND, TREE_TYPE, and verify_expr().

Referenced by verify_expr().

void verify_for_statement ( tree  st  ) 

void verify_function ( tree  fn  ) 

void verify_function_arguments ( tree  args  ) 

void verify_function_type ( tree  type  ) 

void verify_global_namespace ( tree  ns  ) 

void verify_goto_statement ( tree  st  ) 

const char * verify_identifier ( tree  id  ) 

void verify_if_statement ( tree  st  ) 

void verify_incr_or_decr ( tree  expr  ) 

void verify_indirect_ref ( tree  expr  ) 

Definition at line 1506 of file tree_verify.cxx.

References assert, NULL_TREE, same_type_p, TREE_CODE, TREE_OPERAND, TREE_TYPE, and verify_expr().

Referenced by verify_expr().

void verify_init_expr ( tree  expr  ) 

Definition at line 1952 of file tree_verify.cxx.

References assert, NULL_TREE, and TREE_CODE.

Referenced by verify_expr().

void verify_integer_cst ( tree  cst  ) 

void verify_integer_type ( tree  type  ) 

tree verify_label_decl ( tree  decl  ) 

void verify_logical_binary_op ( tree  expr  ) 

Definition at line 1643 of file tree_verify.cxx.

References assert, is_integral_type(), NULL_TREE, TREE_CODE, TREE_OPERAND, TREE_TYPE, and verify_expr().

Referenced by verify_expr().

void verify_method_type ( tree  type  ) 

void verify_modify_expr ( tree  expr  ) 

const char * verify_named_type ( tree  type  ) 

void verify_namespace ( tree  ns  ) 

void verify_negate_expr ( tree  expr  ) 

void verify_nop_expr ( tree  expr  ) 

Definition at line 1557 of file tree_verify.cxx.

References assert, NULL_TREE, TREE_CODE, TREE_OPERAND, and verify_expr().

Referenced by verify_expr().

const char * verify_ordinary_identifier ( tree  id  ) 

void verify_overload ( tree  fn,
tree  ns 
)

void verify_parentless ( tree  t  ) 

Definition at line 2645 of file tree_verify.cxx.

References assert, NULL_TREE, and parent_map.

void verify_parm_decl ( tree  decl  ) 

void verify_pointer_type ( tree  type  ) 

void verify_ptrmem_cst ( tree  ptr  ) 

void verify_real_type ( tree  type  ) 

void verify_reference_type ( tree  type  ) 

Definition at line 2308 of file tree_verify.cxx.

References assert, NULL_TREE, TREE_CODE, TREE_TYPE, and verify_type().

Referenced by verify_type().

void verify_return_statement ( tree  st  ) 

Definition at line 986 of file tree_verify.cxx.

References assert, NULL_TREE, TREE_CODE, and verify_expr().

Referenced by verify_statement().

void verify_save_expr ( tree  expr  ) 

Definition at line 1960 of file tree_verify.cxx.

References assert, NULL_TREE, and TREE_CODE.

Referenced by verify_expr().

void verify_scope_statement ( tree  st  ) 

Definition at line 1088 of file tree_verify.cxx.

References assert, NULL_TREE, and TREE_CODE.

Referenced by verify_statement().

void verify_shift_expr ( tree  expr  ) 

void verify_simple_string_cst ( tree  s  ) 

Definition at line 1333 of file tree_verify.cxx.

References assert, n, NULL_TREE, p, strlen(), TREE_CODE, TREE_STRING_LENGTH, and TREE_STRING_POINTER.

Referenced by verify_asm_statement().

void verify_statement ( tree  stmt  ) 

void verify_string_cst ( tree  s  ) 

Definition at line 1319 of file tree_verify.cxx.

References assert, n, NULL_TREE, p, TREE_CODE, TREE_STRING_LENGTH, and TREE_STRING_POINTER.

Referenced by verify_expr().

void verify_switch_statement ( tree  st  ) 

void verify_target_expr ( tree  expr  ) 

void verify_template_decl ( tree  decl,
scope  sc 
)

void verify_throw_expr ( tree  expr  ) 

Definition at line 1585 of file tree_verify.cxx.

References ancestor_is_function(), assert, NULL_TREE, TREE_CODE, TREE_OPERAND, and verify_expr().

Referenced by verify_expr().

void verify_trunc_expr ( tree  expr  ) 

Definition at line 1529 of file tree_verify.cxx.

References assert, is_integral_type(), NULL_TREE, TREE_CODE, TREE_OPERAND, TREE_TYPE, and verify_expr().

Referenced by verify_expr().

void verify_truth_not_expr ( tree  expr  ) 

Definition at line 1421 of file tree_verify.cxx.

References assert, is_integral_type(), NULL_TREE, TREE_CODE, TREE_OPERAND, TREE_TYPE, and verify_expr().

Referenced by verify_expr().

void verify_try_block ( tree  st  ) 

void verify_type ( tree  type  ) 

void verify_type_name_is ( tree  type,
const char *  s 
)

Definition at line 2598 of file tree_verify.cxx.

References assert, len, strlen(), strncmp(), and verify_named_type().

Referenced by verify_type().

void verify_var_decl ( tree  decl  ) 

void verify_var_decl_statement ( tree  st  ) 

void verify_while_statement ( tree  st  ) 

const char* verity_ordinary_identifier ( tree  id  ) 

void verity_overload ( tree  ovl  ) 


Variable Documentation

std::hash_map<tree, tree, void_ptr_hash> parent_map

std::hash_set<tree, void_ptr_hash> seen_map

Definition at line 2617 of file tree_verify.cxx.

Referenced by mark_tree_node_as_seen(), and tree_node_already_seen().


Generated on Wed Apr 8 15:48:39 2009 for Open64 by  doxygen 1.5.6