osprey/kg++fe/gnu/c-common.c File Reference

#include "config.h"
#include "system.h"
#include "tree.h"
#include "real.h"
#include "flags.h"
#include "toplev.h"
#include "output.h"
#include "c-pragma.h"
#include "rtl.h"
#include "ggc.h"
#include "expr.h"
#include "c-common.h"
#include "diagnostic.h"
#include "tm_p.h"
#include "obstack.h"
#include "cpplib.h"
#include "target.h"
#include "langhooks.h"
#include "except.h"
#include "tree-inline.h"
#include "c-tree.h"
#include "builtin-attrs.def"
#include "builtin-types.def"
#include "builtins.def"
#include "gt-c-common.h"

Include dependency graph for c-common.c:

Go to the source code of this file.

Data Types

type  fname_var_t
type  if_elt
type  tlist
type  tlist_cache
type  disabled_builtin

Defines

#define SIZE_TYPE   "long unsigned int"
#define WCHAR_TYPE   "int"
#define MODIFIED_WCHAR_TYPE   (flag_short_wchar ? "short unsigned int" : WCHAR_TYPE)
#define PTRDIFF_TYPE   "long int"
#define WINT_TYPE   "unsigned int"
#define INTMAX_TYPE
#define UINTMAX_TYPE
#define REGISTER_PREFIX   ""
#define DOLLARS_IN_IDENTIFIERS   1
#define DEF_ATTR_NULL_TREE(ENUM)   ENUM,
#define DEF_ATTR_INT(ENUM, VALUE)   ENUM,
#define DEF_ATTR_IDENT(ENUM, STRING)   ENUM,
#define DEF_ATTR_TREE_LIST(ENUM, PURPOSE, VALUE, CHAIN)   ENUM,
#define DEF_FN_ATTR(NAME, ATTRS, PREDICATE)
#define DEF_PRIMITIVE_TYPE(NAME, VALUE)   NAME,
#define DEF_FUNCTION_TYPE_0(NAME, RETURN)   NAME,
#define DEF_FUNCTION_TYPE_1(NAME, RETURN, ARG1)   NAME,
#define DEF_FUNCTION_TYPE_2(NAME, RETURN, ARG1, ARG2)   NAME,
#define DEF_FUNCTION_TYPE_3(NAME, RETURN, ARG1, ARG2, ARG3)   NAME,
#define DEF_FUNCTION_TYPE_4(NAME, RETURN, ARG1, ARG2, ARG3, ARG4)   NAME,
#define DEF_FUNCTION_TYPE_VAR_0(NAME, RETURN)   NAME,
#define DEF_FUNCTION_TYPE_VAR_1(NAME, RETURN, ARG1)   NAME,
#define DEF_FUNCTION_TYPE_VAR_2(NAME, RETURN, ARG1, ARG2)   NAME,
#define DEF_FUNCTION_TYPE_VAR_3(NAME, RETURN, ARG1, ARG2, ARG3)   NAME,
#define DEF_POINTER_TYPE(NAME, TYPE)   NAME,
#define DEF_PRIMITIVE_TYPE(ENUM, VALUE)   builtin_types[(int) ENUM] = VALUE;
#define DEF_FUNCTION_TYPE_0(ENUM, RETURN)
#define DEF_FUNCTION_TYPE_1(ENUM, RETURN, ARG1)
#define DEF_FUNCTION_TYPE_2(ENUM, RETURN, ARG1, ARG2)
#define DEF_FUNCTION_TYPE_3(ENUM, RETURN, ARG1, ARG2, ARG3)
#define DEF_FUNCTION_TYPE_4(ENUM, RETURN, ARG1, ARG2, ARG3, ARG4)
#define DEF_FUNCTION_TYPE_VAR_0(ENUM, RETURN)
#define DEF_FUNCTION_TYPE_VAR_1(ENUM, RETURN, ARG1)
#define DEF_FUNCTION_TYPE_VAR_2(ENUM, RETURN, ARG1, ARG2)
#define DEF_FUNCTION_TYPE_VAR_3(ENUM, RETURN, ARG1, ARG2, ARG3)
#define DEF_POINTER_TYPE(ENUM, TYPE)
#define DEF_BUILTIN(ENUM, NAME, CLASS, TYPE, LIBTYPE,BOTH_P, FALLBACK_P, NONANSI_P, ATTRS)
#define WALK_SUBTREE(NODE)
#define CALLED_AS_BUILT_IN(NODE)   (!strncmp (IDENTIFIER_POINTER (DECL_NAME (NODE)), "__builtin_", 10))
#define preprocessing_asm_p()   (cpp_get_options (pfile)->lang == CLK_ASM)
#define preprocessing_trad_p()   (cpp_get_options (pfile)->traditional)
#define builtin_define(TXT)   cpp_define (pfile, TXT)
#define builtin_assert(TXT)   cpp_assert (pfile, TXT)
#define DEF_ATTR_NULL_TREE(ENUM)   built_in_attributes[(int) ENUM] = NULL_TREE;
#define DEF_ATTR_INT(ENUM, VALUE)   built_in_attributes[(int) ENUM] = build_int_2 (VALUE, VALUE < 0 ? -1 : 0);
#define DEF_ATTR_IDENT(ENUM, STRING)   built_in_attributes[(int) ENUM] = get_identifier (STRING);
#define DEF_ATTR_TREE_LIST(ENUM, PURPOSE, VALUE, CHAIN)
#define DEF_FN_ATTR(NAME, ATTRS, PREDICATE)
#define DEF_ATTR_NULL_TREE(ENUM)
#define DEF_ATTR_INT(ENUM, VALUE)
#define DEF_ATTR_IDENT(ENUM, STRING)
#define DEF_ATTR_TREE_LIST(ENUM, PURPOSE, VALUE, CHAIN)
#define DEF_FN_ATTR(NAME, ATTRS, PREDICATE)

Enumerations

enum  built_in_attribute { DEF_ATTR_NULL_TREE, DEF_ATTR_NULL_TREE, DEF_ATTR_NULL_TREE, DEF_ATTR_NULL_TREE }

Functions/Subroutines

tree make_fname_decl PARAMS ((tree, int))
int lang_statement_code_p PARAMS ((enum tree_code))
void lang_expand_function_end PARAMS ((void))
static int constant_fits_type_p PARAMS ((tree, tree))
static tree handle_packed_attribute PARAMS ((tree *, tree, tree, int, bool *))
static void check_nonnull_arg PARAMS ((void *, tree, unsigned HOST_WIDE_INT))
static bool nonnull_check_p PARAMS ((tree, unsigned HOST_WIDE_INT))
static bool get_nonnull_operand PARAMS ((tree, unsigned HOST_WIDE_INT *))
void builtin_define_std PARAMS ((const char *))
static void
builtin_define_with_value 
PARAMS ((const char *, const char *, int))
static void
builtin_define_with_int_value 
PARAMS ((const char *, HOST_WIDE_INT))
static void
builtin_define_with_hex_fp_value 
PARAMS ((const char *, tree, int, const char *, const char *))
static void builtin_define_type_max PARAMS ((const char *, tree, int))
static void
builtin_define_type_precision 
PARAMS ((const char *, tree))
static void
builtin_define_float_constants 
PARAMS ((const char *, const char *, tree))
void c_expand_start_cond (tree cond, int compstmt_count, tree if_stmt)
void c_finish_then ()
void c_expand_end_cond ()
void c_expand_start_else ()
void c_finish_else ()
tree c_begin_if_stmt ()
tree c_begin_while_stmt ()
void c_finish_while_stmt_cond (tree cond, tree while_stmt)
void start_fname_decls ()
void finish_fname_decls ()
const char * fname_as_string (int pretty_p)
const char * fname_string (unsigned rid)
tree fname_decl (unsigned rid, tree id)
tree fix_string_type (tree value)
tree combine_strings (varray_type strings)
static int is_valid_printf_arglist PARAMS ((tree))
static rtx c_expand_builtin PARAMS ((tree, rtx, enum machine_mode, enum expand_modifier))
static rtx c_expand_builtin_printf PARAMS ((tree, rtx, enum machine_mode, enum expand_modifier, int, int))
void constant_expression_warning (tree value)
void overflow_warning (tree value)
void unsigned_conversion_warning (tree result, tree operand)
static int constant_fits_type_p (tree c, tree type)
tree convert_and_check (tree type, tree expr)
static void add_tlist PARAMS ((struct tlist **, struct tlist *, tree, int))
static void merge_tlist PARAMS ((struct tlist **, struct tlist *, int))
static void verify_tree PARAMS ((tree, struct tlist **, struct tlist **, tree))
static void warn_for_collisions PARAMS ((struct tlist *))
static void warn_for_collisions_1 PARAMS ((tree, tree, struct tlist *, int))
static struct tlist *new_tlist PARAMS ((struct tlist *, tree, tree))
static struct tlistnew_tlist (struct tlist *next, tree t, tree writer)
static void add_tlist (struct tlist **to, struct tlist *add, tree exclude_writer, int copy)
static void merge_tlist (struct tlist **to, struct tlist *add, int copy)
static void warn_for_collisions_1 (tree written, tree writer, struct tlist *list, int only_writes)
static void warn_for_collisions (struct tlist *list)
static int warning_candidate_p (tree x)
static void verify_tree (tree x, struct tlist **pbefore_sp, struct tlist **pno_sp, tree writer)
static void verify_sequence_points (tree expr)
tree c_expand_expr_stmt (tree expr)
tree check_case_value (tree value)
tree c_common_type_for_size (unsigned bits, int unsignedp)
tree c_common_type_for_mode (enum machine_mode mode, int unsignedp)
tree c_common_unsigned_type (tree type)
tree c_common_signed_type (tree type)
tree c_common_signed_or_unsigned_type (int unsignedp, tree type)
unsigned int min_precision (tree value, int unsignedp)
void binary_op_error (enum tree_code code)
tree shorten_compare (tree *op0_ptr, tree *op1_ptr, tree *restype_ptr, enum tree_code *rescode_ptr)
tree pointer_int_sum (enum tree_code resultcode, tree ptrop, tree intop)
tree c_common_truthvalue_conversion (tree expr)
static tree builtin_function_2 PARAMS ((const char *, const char *, tree, tree, int, enum built_in_class, int, int, tree))
tree c_build_qualified_type (tree type, int type_quals)
void c_apply_type_quals_to_decl (int type_quals, tree decl)
HOST_WIDE_INT c_common_get_alias_set (tree t)
tree c_sizeof_or_alignof_type (tree type, enum tree_code op, int complain)
tree c_alignof_expr (tree expr)
static GTY (())
tree build_va_arg (tree expr, tree type)
void disable_builtin_function (char *name) const
static bool builtin_function_disabled_p (char *name) const
static tree builtin_function_2 (char *builtin_name, const char *name, tree builtin_type, tree type, int function_code, enum built_in_class class, int library_name_p, int nonansi_p, tree attrs) const
bool c_promoting_integer_type_p (tree t)
int self_promoting_args_p (tree parms)
tree strip_array_types (tree type)
static tree expand_unordered_cmp PARAMS ((tree, tree, enum tree_code, enum tree_code))
static tree expand_unordered_cmp (tree function, tree params, enum tree_code unordered_code, enum tree_code ordered_code)
tree expand_tree_builtin (tree function, tree params, tree coerced_params)
int statement_code_p (enum tree_code code)
tree walk_stmt_tree (tree *tp, walk_tree_fn func, void *data)
int case_compare (splay_tree_key k1, splay_tree_key k2)
tree c_add_case_label (splay_tree cases, tree cond, tree low_value, tree high_value)
tree finish_label_address_expr (tree label)
rtx c_expand_expr (tree exp, rtx target, enum machine_mode tmode, int modifier)
int c_safe_from_p (rtx target, tree exp)
int c_common_unsafe_for_reeval (tree exp)
int c_staticp (tree exp)
static rtx c_expand_builtin (tree exp, rtx target, enum machine_mode tmode, enum expand_modifier modifier)
static int is_valid_printf_arglist (tree arglist)
static rtx c_expand_builtin_printf (tree arglist, rtx target, enum machine_mode tmode, enum expand_modifier modifier, int ignore, int unlocked)
static rtx c_expand_builtin_fprintf (tree arglist, rtx target, enum machine_mode tmode, enum expand_modifier modifier, int ignore, int unlocked)
tree boolean_increment (enum tree_code code, tree arg)
static void builtin_define_type_precision (char *name, tree type) const
static void builtin_define_float_constants (char *name_prefix, const char *fp_suffix, tree type) const
void cb_register_builtins (cpp_reader *pfile)
void builtin_define_std (char *macro) const
static void builtin_define_with_value (char *macro, const char *expansion, int is_str) const
static void builtin_define_with_int_value (char *macro, HOST_WIDE_INT value) const
static void builtin_define_with_hex_fp_value (char *macro, type, int digits, const char *hex_str, const char *fp_suffix) const
static void builtin_define_type_max (char *macro, tree type, int is_long) const
static void c_init_attributes ()
void c_common_insert_default_attributes (tree decl)
void shadow_warning (char *msgid, tree name, tree decl) const
static tree handle_packed_attribute (tree *node, tree name, args, int flags, bool *no_add_attrs)
static tree handle_nocommon_attribute (tree *node, tree name, args, flags, bool *no_add_attrs)
static tree handle_common_attribute (tree *node, tree name, args, flags, bool *no_add_attrs)
static tree handle_noreturn_attribute (tree *node, tree name, args, flags, bool *no_add_attrs)
static tree handle_noinline_attribute (tree *node, tree name, args, flags, bool *no_add_attrs)
static tree handle_always_inline_attribute (tree *node, tree name, args, flags, bool *no_add_attrs)
static tree handle_used_attribute (tree *pnode, tree name, args, flags, bool *no_add_attrs)
static tree handle_unused_attribute (tree *node, tree name, args, int flags, bool *no_add_attrs)
static tree handle_const_attribute (tree *node, tree name, args, flags, bool *no_add_attrs)
static tree handle_transparent_union_attribute (tree *node, tree name, args, int flags, bool *no_add_attrs)
static tree handle_constructor_attribute (tree *node, tree name, args, flags, bool *no_add_attrs)
static tree handle_destructor_attribute (tree *node, tree name, args, flags, bool *no_add_attrs)
static tree handle_mode_attribute (tree *node, tree name, tree args, flags, bool *no_add_attrs)
static tree handle_section_attribute (tree *node, name, tree args, flags, bool *no_add_attrs)
static tree handle_aligned_attribute (tree *node, name, tree args, int flags, bool *no_add_attrs)
static tree handle_weak_attribute (tree *node, name, args, flags, no_add_attrs)
static tree handle_alias_attribute (tree *node, tree name, tree args, flags, bool *no_add_attrs)
static tree handle_visibility_attribute (tree *node, tree name, tree args, flags, bool *no_add_attrs)
static tree handle_tls_model_attribute (tree *node, tree name, tree args, flags, bool *no_add_attrs)
static tree handle_no_instrument_function_attribute (tree *node, tree name, args, flags, bool *no_add_attrs)
static tree handle_malloc_attribute (tree *node, tree name, args, flags, bool *no_add_attrs)
static tree handle_no_limit_stack_attribute (tree *node, tree name, args, flags, bool *no_add_attrs)
static tree handle_pure_attribute (tree *node, tree name, args, flags, bool *no_add_attrs)
static tree handle_cleanup_attribute (tree *node, tree name, tree args, flags, bool *no_add_attrs)
static tree handle_deprecated_attribute (tree *node, tree name, args, int flags, bool *no_add_attrs)
static tree vector_size_helper (tree type, tree bottom)
static tree handle_nonnull_attribute (tree *node, name, tree args, flags, bool *no_add_attrs)
static void check_function_nonnull (tree attrs, tree params)
static bool nonnull_check_p (tree args, unsigned HOST_WIDE_INT param_num)
static void check_nonnull_arg (ctx, tree param, unsigned HOST_WIDE_INT param_num)
static bool get_nonnull_operand (tree arg_num_expr, unsigned HOST_WIDE_INT *valp)
static tree handle_nothrow_attribute (tree *node, tree name, args, flags, bool *no_add_attrs)
void check_function_arguments (tree attrs, tree params)
void check_function_arguments_recurse (void *callback, void *ctx, tree param, unsigned HOST_WIDE_INT param_num)

Variables

cpp_readerparse_in
enum c_language_kind c_language
tree c_global_trees [CTI_MAX]
int flag_preprocess_only
int flag_iso
int flag_objc
int flag_undef
int flag_no_builtin
int flag_no_nonansi_builtin
int flag_short_double
int flag_short_wchar
int flag_ms_extensions
int flag_no_asm
int flag_const_strings
int dollars_in_ident = DOLLARS_IN_IDENTIFIERS
int flag_signed_bitfields = 1
int explicit_flag_signed_bitfields
int warn_cast_qual
int warn_missing_format_attribute
int warn_pointer_arith
int warn_missing_prototypes
int warn_parentheses
int warn_missing_braces
int warn_sign_compare
int warn_long_long = 1
int warn_write_strings
int warn_redundant_decls
int warn_float_equal
int warn_char_subscripts
int warn_conversion
int warn_unknown_pragmas
int warn_format
int warn_format_y2k
int warn_format_extra_args
int warn_format_zero_length
int warn_format_nonliteral
int warn_format_security
int mesg_implicit_function_declaration = -1
int flag_cond_mismatch
int flag_isoc94
int flag_isoc99
int flag_hosted = 1
int flag_noniso_default_format_attributes = 1
int warn_bad_function_cast
int warn_traditional
int warn_declaration_after_statement
int warn_strict_prototypes
int warn_missing_declarations
int warn_nested_externs
int warn_main
int warn_sequence_point
int warn_div_by_zero = 1
int warn_implicit_int
int warn_nonnull
int flag_gen_declaration
int flag_next_runtime = 0
int print_struct_values
const char * constant_string_class_name
int warn_selector
int warn_undeclared_selector
int warn_protocol = 1
int flag_no_gnu_keywords
int flag_implement_inlines = 1
int flag_external_templates
int flag_alt_external_templates
int flag_implicit_templates = 1
int flag_implicit_inline_templates = 1
int flag_use_repository
int flag_optional_diags = 1
int flag_elide_constructors = 1
int flag_default_inline = 1
int flag_rtti = 1
int flag_conserve_space
int flag_access_control = 1
int flag_check_new
int flag_new_for_scope = 1
int flag_weak = 1
int flag_use_cxa_atexit = DEFAULT_USE_CXA_ATEXIT
int flag_vtable_gc
int flag_permissive
int flag_enforce_eh_specs = 1
int flag_abi_version = 1
int warn_abi = 0
int warn_implicit = 1
int warn_ctor_dtor_privacy = 1
int warn_overloaded_virtual
int warn_nonvdtor
int warn_reorder
int warn_synth
int warn_pmf2ptr = 1
int warn_ecpp
int warn_sign_promo
int warn_old_style_cast
int warn_nontemplate_friend = 1
int warn_deprecated = 1
int max_tinst_depth = 500
treeridpointers
int skip_evaluation
struct fname_var_t fname_vars []
static if_eltif_stack
static int if_stack_space = 0
static int if_stack_pointer = 0
struct attribute_spec c_common_attribute_table []
struct attribute_spec c_common_format_attribute_table []
static struct obstack tlist_obstack
static char * tlist_firstobj = 0
static struct tlistwarned_ids
static struct tlist_cachesave_expr_cache
static disabled_builtindisabled_builtins = NULL


Define Documentation

#define builtin_assert ( TXT   )     cpp_assert (pfile, TXT)

#define builtin_define ( TXT   )     cpp_define (pfile, TXT)

#define CALLED_AS_BUILT_IN ( NODE   )     (!strncmp (IDENTIFIER_POINTER (DECL_NAME (NODE)), "__builtin_", 10))

Definition at line 4581 of file c-common.c.

#define DEF_ATTR_IDENT ( ENUM,
STRING   ) 

#define DEF_ATTR_IDENT ( ENUM,
STRING   )     built_in_attributes[(int) ENUM] = get_identifier (STRING);

#define DEF_ATTR_IDENT ( ENUM,
STRING   )     ENUM,

#define DEF_ATTR_INT ( ENUM,
VALUE   ) 

#define DEF_ATTR_INT ( ENUM,
VALUE   )     built_in_attributes[(int) ENUM] = build_int_2 (VALUE, VALUE < 0 ? -1 : 0);

#define DEF_ATTR_INT ( ENUM,
VALUE   )     ENUM,

#define DEF_ATTR_NULL_TREE ( ENUM   ) 

#define DEF_ATTR_NULL_TREE ( ENUM   )     built_in_attributes[(int) ENUM] = NULL_TREE;

#define DEF_ATTR_NULL_TREE ( ENUM   )     ENUM,

#define DEF_ATTR_TREE_LIST ( ENUM,
PURPOSE,
VALUE,
CHAIN   ) 

#define DEF_ATTR_TREE_LIST ( ENUM,
PURPOSE,
VALUE,
CHAIN   ) 

Value:

built_in_attributes[(int) ENUM]     \
    = tree_cons (built_in_attributes[(int) PURPOSE],  \
     built_in_attributes[(int) VALUE],  \
     built_in_attributes[(int) CHAIN]);

#define DEF_ATTR_TREE_LIST ( ENUM,
PURPOSE,
VALUE,
CHAIN   )     ENUM,

#define DEF_BUILTIN ( ENUM,
NAME,
CLASS,
TYPE,
LIBTYPE,
BOTH_P,
FALLBACK_P,
NONANSI_P,
ATTRS   ) 

Value:

if (NAME)               \
    {                 \
      const char *__name__ = NAME;          \
      tree decl;              \
                  \
      if (strncmp (__name__, "__builtin_", strlen ("__builtin_")) != 0) \
  abort ();             \
                  \
      if (!BOTH_P)              \
  decl = builtin_function (__name__, builtin_types[TYPE], ENUM, \
         CLASS,         \
         (FALLBACK_P        \
          ? (__name__ + strlen ("__builtin_"))  \
          : NULL),        \
         built_in_attributes[(int) ATTRS]); \
      else                \
  decl = builtin_function_2 (__name__,        \
           __name__ + strlen ("__builtin_"),  \
           builtin_types[TYPE],     \
           builtin_types[LIBTYPE],    \
           ENUM,        \
           CLASS,       \
           FALLBACK_P,        \
           NONANSI_P,       \
           built_in_attributes[(int) ATTRS]); \
                  \
      built_in_decls[(int) ENUM] = decl;        \
    }

#define DEF_FN_ATTR ( NAME,
ATTRS,
PREDICATE   ) 

Value:

if ((PREDICATE) && name == built_in_attributes[(int) NAME]) \
    decl_attributes (&decl, built_in_attributes[(int) ATTRS], \
         ATTR_FLAG_BUILT_IN);

#define DEF_FN_ATTR ( NAME,
ATTRS,
PREDICATE   ) 

#define DEF_FN_ATTR ( NAME,
ATTRS,
PREDICATE   ) 

#define DEF_FUNCTION_TYPE_0 ( ENUM,
RETURN   ) 

#define DEF_FUNCTION_TYPE_0 ( NAME,
RETURN   )     NAME,

#define DEF_FUNCTION_TYPE_1 ( ENUM,
RETURN,
ARG1   ) 

#define DEF_FUNCTION_TYPE_1 ( NAME,
RETURN,
ARG1   )     NAME,

#define DEF_FUNCTION_TYPE_2 ( ENUM,
RETURN,
ARG1,
ARG2   ) 

Value:

builtin_types[(int) ENUM]       \
    = build_function_type         \
      (builtin_types[(int) RETURN],     \
       tree_cons (NULL_TREE,        \
      builtin_types[(int) ARG1],    \
      tree_cons (NULL_TREE,     \
           builtin_types[(int) ARG2], \
           void_list_node)));

#define DEF_FUNCTION_TYPE_2 ( NAME,
RETURN,
ARG1,
ARG2   )     NAME,

#define DEF_FUNCTION_TYPE_3 ( ENUM,
RETURN,
ARG1,
ARG2,
ARG3   ) 

Value:

builtin_types[(int) ENUM]            \
    = build_function_type            \
      (builtin_types[(int) RETURN],          \
       tree_cons (NULL_TREE,             \
      builtin_types[(int) ARG1],         \
      tree_cons (NULL_TREE,          \
           builtin_types[(int) ARG2],      \
           tree_cons (NULL_TREE,       \
          builtin_types[(int) ARG3],   \
          void_list_node))));

#define DEF_FUNCTION_TYPE_3 ( NAME,
RETURN,
ARG1,
ARG2,
ARG3   )     NAME,

#define DEF_FUNCTION_TYPE_4 ( ENUM,
RETURN,
ARG1,
ARG2,
ARG3,
ARG4   ) 

Value:

builtin_types[(int) ENUM]           \
    = build_function_type           \
      (builtin_types[(int) RETURN],         \
       tree_cons (NULL_TREE,            \
      builtin_types[(int) ARG1],        \
      tree_cons (NULL_TREE,         \
           builtin_types[(int) ARG2],     \
           tree_cons          \
           (NULL_TREE,        \
            builtin_types[(int) ARG3],    \
            tree_cons (NULL_TREE,     \
           builtin_types[(int) ARG4], \
           void_list_node)))));

#define DEF_FUNCTION_TYPE_4 ( NAME,
RETURN,
ARG1,
ARG2,
ARG3,
ARG4   )     NAME,

#define DEF_FUNCTION_TYPE_VAR_0 ( ENUM,
RETURN   ) 

#define DEF_FUNCTION_TYPE_VAR_0 ( NAME,
RETURN   )     NAME,

#define DEF_FUNCTION_TYPE_VAR_1 ( ENUM,
RETURN,
ARG1   ) 

Value:

builtin_types[(int) ENUM]            \
    = build_function_type (builtin_types[(int) RETURN],      \
         tree_cons (NULL_TREE,       \
              builtin_types[(int) ARG1],   \
              NULL_TREE));

#define DEF_FUNCTION_TYPE_VAR_1 ( NAME,
RETURN,
ARG1   )     NAME,

#define DEF_FUNCTION_TYPE_VAR_2 ( ENUM,
RETURN,
ARG1,
ARG2   ) 

Value:

builtin_types[(int) ENUM]         \
    = build_function_type           \
      (builtin_types[(int) RETURN],       \
       tree_cons (NULL_TREE,          \
      builtin_types[(int) ARG1],      \
      tree_cons (NULL_TREE,       \
           builtin_types[(int) ARG2],   \
           NULL_TREE)));

#define DEF_FUNCTION_TYPE_VAR_2 ( NAME,
RETURN,
ARG1,
ARG2   )     NAME,

#define DEF_FUNCTION_TYPE_VAR_3 ( ENUM,
RETURN,
ARG1,
ARG2,
ARG3   ) 

Value:

builtin_types[(int) ENUM]           \
    = build_function_type             \
      (builtin_types[(int) RETURN],         \
       tree_cons (NULL_TREE,            \
      builtin_types[(int) ARG1],        \
      tree_cons (NULL_TREE,         \
           builtin_types[(int) ARG2],     \
           tree_cons (NULL_TREE,      \
          builtin_types[(int) ARG3],  \
          NULL_TREE))));

#define DEF_FUNCTION_TYPE_VAR_3 ( NAME,
RETURN,
ARG1,
ARG2,
ARG3   )     NAME,

#define DEF_POINTER_TYPE ( ENUM,
TYPE   ) 

#define DEF_POINTER_TYPE ( NAME,
TYPE   )     NAME,

#define DEF_PRIMITIVE_TYPE ( ENUM,
VALUE   )     builtin_types[(int) ENUM] = VALUE;

#define DEF_PRIMITIVE_TYPE ( NAME,
VALUE   )     NAME,

#define DOLLARS_IN_IDENTIFIERS   1

Definition at line 250 of file c-common.c.

Referenced by c_common_init_options().

#define INTMAX_TYPE

Value:

((INT_TYPE_SIZE == LONG_LONG_TYPE_SIZE) \
         ? "int"          \
         : ((LONG_TYPE_SIZE == LONG_LONG_TYPE_SIZE) \
      ? "long int"        \
      : "long long int"))

Definition at line 83 of file c-common.c.

Referenced by c_common_nodes_and_builtins(), c_stddef_cpp_builtins(), and GTY().

#define MODIFIED_WCHAR_TYPE   (flag_short_wchar ? "short unsigned int" : WCHAR_TYPE)

 
#define preprocessing_asm_p (  )     (cpp_get_options (pfile)->lang == CLK_ASM)

Referenced by c_common_handle_option().

 
#define preprocessing_trad_p (  )     (cpp_get_options (pfile)->traditional)

#define PTRDIFF_TYPE   "long int"

#define REGISTER_PREFIX   ""

#define SIZE_TYPE   "long unsigned int"

#define UINTMAX_TYPE

Value:

((INT_TYPE_SIZE == LONG_LONG_TYPE_SIZE) \
         ? "unsigned int"       \
         : ((LONG_TYPE_SIZE == LONG_LONG_TYPE_SIZE) \
      ? "long unsigned int"     \
      : "long long unsigned int"))

Definition at line 91 of file c-common.c.

Referenced by c_common_nodes_and_builtins(), c_stddef_cpp_builtins(), and GTY().

#define WALK_SUBTREE ( NODE   ) 

Value:

do              \
    {             \
      result = walk_stmt_tree (&(NODE), func, data);  \
      if (result)         \
  return result;          \
    }             \
  while (0)

Referenced by cp_walk_subtrees(), walk_stmt_tree(), walk_tree(), and walk_type_fields().

#define WCHAR_TYPE   "int"

Definition at line 67 of file c-common.c.

Referenced by initialize_builtins().

#define WINT_TYPE   "unsigned int"


Enumeration Type Documentation

Enumerator:
DEF_ATTR_NULL_TREE 
DEF_ATTR_NULL_TREE 
DEF_ATTR_NULL_TREE 
DEF_ATTR_NULL_TREE 

Definition at line 3199 of file c-common.c.


Function Documentation

static void add_tlist ( struct tlist **  to,
struct tlist add,
tree  exclude_writer,
int  copy 
) [static]

Definition at line 1556 of file c-common.c.

References tlist::expr, new_tlist(), next, and tlist::writer.

Referenced by verify_tree().

void binary_op_error ( enum tree_code  code  ) 

Definition at line 2257 of file c-common.c.

Referenced by build_binary_op().

tree boolean_increment ( enum tree_code  code,
tree  arg 
)

Definition at line 4876 of file c-common.c.

Referenced by build_unary_op().

tree build_va_arg ( tree  expr,
tree  type 
)

Definition at line 3760 of file c-common.c.

Referenced by build_expr_from_tree(), build_x_va_arg(), and c_parser_postfix_expression().

static void builtin_define_float_constants ( char *  name_prefix,
const char *  fp_suffix,
tree  type 
) const [static]

void builtin_define_std ( char *  macro  )  const

Definition at line 5202 of file c-common.c.

References alloca, cpp_define(), flag_iso, ISUPPER, len, memcpy, p, q, and strlen().

static void builtin_define_type_max ( char *  macro,
tree  type,
int  is_long 
) const [static]

static void builtin_define_type_precision ( char *  name,
tree  type 
) const [static]

Definition at line 4914 of file c-common.c.

References builtin_define_with_int_value(), and TYPE_PRECISION.

Referenced by c_cpp_builtins(), and cb_register_builtins().

static void builtin_define_with_hex_fp_value ( char *  macro,
type  ,
int  digits,
const char *  hex_str,
const char *  fp_suffix 
) const [static]

static void builtin_define_with_int_value ( char *  macro,
HOST_WIDE_INT  value 
) const [static]

static void builtin_define_with_value ( char *  macro,
const char *  expansion,
int  is_str 
) const [static]

static tree builtin_function_2 ( char *  builtin_name,
const char *  name,
tree  builtin_type,
tree  type,
int  function_code,
enum built_in_class  class,
int  library_name_p,
int  nonansi_p,
tree  attrs 
) const [static]

static bool builtin_function_disabled_p ( char *  name  )  const [static]

Definition at line 3801 of file c-common.c.

References disabled_builtin::name, disabled_builtin::next, NULL, p, and strcmp().

Referenced by builtin_function_2(), and def_builtin_1().

tree c_add_case_label ( splay_tree  cases,
tree  cond,
tree  low_value,
tree  high_value 
)

tree c_alignof_expr ( tree  expr  ) 

Definition at line 3155 of file c-common.c.

Referenced by build_expr_from_tree(), c_parser_alignof_expression(), and finish_alignof().

void c_apply_type_quals_to_decl ( int  type_quals,
tree  decl 
)

tree c_begin_if_stmt (  ) 

Definition at line 1018 of file c-common.c.

References build_stmt(), NULL_TREE, and r.

tree c_begin_while_stmt (  ) 

Definition at line 1034 of file c-common.c.

References build_stmt(), NULL_TREE, and r.

tree c_build_qualified_type ( tree  type,
int  type_quals 
)

HOST_WIDE_INT c_common_get_alias_set ( tree  t  ) 

Definition at line 3008 of file c-common.c.

Referenced by cxx_get_alias_set().

void c_common_insert_default_attributes ( tree  decl  ) 

Definition at line 5385 of file c-common.c.

References c_init_attributes(), and DECL_NAME.

Referenced by c_insert_default_attributes(), and cxx_insert_default_attributes().

tree c_common_signed_or_unsigned_type ( int  unsignedp,
tree  type 
)

tree c_common_signed_type ( tree  type  ) 

tree c_common_truthvalue_conversion ( tree  expr  ) 

tree c_common_type_for_mode ( enum machine_mode  mode,
int  unsignedp 
)

Definition at line 2021 of file c-common.c.

Referenced by dump_type(), GTY(), pp_c_type_specifier(), and write_builtin_type().

tree c_common_type_for_size ( unsigned  bits,
int  unsignedp 
)

int c_common_unsafe_for_reeval ( tree  exp  ) 

Definition at line 4556 of file c-common.c.

References TREE_CODE.

tree c_common_unsigned_type ( tree  type  ) 

static rtx c_expand_builtin ( tree  exp,
rtx  target,
enum machine_mode  tmode,
enum expand_modifier  modifier 
) [static]

static rtx c_expand_builtin_fprintf ( tree  arglist,
rtx  target,
enum machine_mode  tmode,
enum expand_modifier  modifier,
int  ignore,
int  unlocked 
) [static]

static rtx c_expand_builtin_printf ( tree  arglist,
rtx  target,
enum machine_mode  tmode,
enum expand_modifier  modifier,
int  ignore,
int  unlocked 
) [static]

void c_expand_end_cond (  ) 

Definition at line 969 of file c-common.c.

References last_expr_type, and NULL_TREE.

rtx c_expand_expr ( tree  exp,
rtx  target,
enum machine_mode  tmode,
int  modifier 
)

tree c_expand_expr_stmt ( tree  expr  ) 

void c_expand_start_cond ( tree  cond,
int  compstmt_count,
tree  if_stmt 
)

void c_expand_start_else (  ) 

Definition at line 983 of file c-common.c.

References if_elt::compstmt_count, if_elt::needs_warning, and warn_parentheses.

void c_finish_else (  ) 

Definition at line 1003 of file c-common.c.

References ELSE_CLAUSE, if_elt::if_stmt, and RECHAIN_STMTS.

void c_finish_then (  ) 

Definition at line 959 of file c-common.c.

References if_elt::if_stmt, RECHAIN_STMTS, and THEN_CLAUSE.

void c_finish_while_stmt_cond ( tree  cond,
tree  while_stmt 
)

Definition at line 1042 of file c-common.c.

References WHILE_COND.

static void c_init_attributes ( void   )  [static]

bool c_promoting_integer_type_p ( tree  t  ) 

int c_safe_from_p ( rtx  target,
tree  exp 
)

tree c_sizeof_or_alignof_type ( tree  type,
enum tree_code  op,
int  complain 
)

Definition at line 3092 of file c-common.c.

Referenced by cxx_sizeof_or_alignof_type().

int c_staticp ( tree  exp  ) 

Definition at line 4572 of file c-common.c.

int case_compare ( splay_tree_key  k1,
splay_tree_key  k2 
)

Definition at line 4204 of file c-common.c.

Referenced by c_start_case(), and push_switch().

void cb_register_builtins ( cpp_reader pfile  ) 

static tree check_case_value ( tree  value  ) 

Definition at line 1937 of file c-common.c.

Referenced by c_add_case_label().

void check_function_arguments ( tree  attrs,
tree  params 
)

void check_function_arguments_recurse ( void callback,
void ctx,
tree  param,
unsigned HOST_WIDE_INT  param_num 
)

static void check_function_nonnull ( tree  attrs,
tree  params 
) [static]

static void check_nonnull_arg ( ctx  ,
tree  param,
unsigned HOST_WIDE_INT  param_num 
) [static]

Definition at line 6815 of file c-common.c.

References integer_zerop(), TREE_CODE, TREE_TYPE, and warning.

Referenced by check_function_nonnull().

tree combine_strings ( varray_type  strings  ) 

void constant_expression_warning ( tree  value  ) 

static int constant_fits_type_p ( tree  c,
tree  type 
) [static]

Definition at line 1449 of file c-common.c.

References convert(), int_fits_type_p(), TREE_CODE, and TREE_OVERFLOW.

Referenced by convert_and_check().

tree convert_and_check ( tree  type,
tree  expr 
)

void disable_builtin_function ( char *  name  )  const

Definition at line 3782 of file c-common.c.

References error(), strlen(), strncmp(), and xmalloc().

Referenced by c_common_decode_option(), and c_common_handle_option().

tree expand_tree_builtin ( tree  function,
tree  params,
tree  coerced_params 
)

static tree expand_unordered_cmp ( tree  function,
tree  params,
enum tree_code  unordered_code,
enum tree_code  ordered_code 
) [static]

void finish_fname_decls ( void   ) 

Definition at line 1082 of file c-common.c.

Referenced by finish_function(), finish_translation_unit(), and pop_file_scope().

tree finish_label_address_expr ( tree  label  ) 

tree fix_string_type ( tree  value  ) 

Definition at line 1213 of file c-common.c.

Referenced by c_expand_builtin_printf(), cp_parser_string_literal(), and tinfo_name().

const char* fname_as_string ( int  pretty_p  ) 

Definition at line 1126 of file c-common.c.

Referenced by c_make_fname_decl(), cp_make_fname_decl(), and fname_string().

tree fname_decl ( unsigned  rid,
tree  id 
)

Definition at line 1165 of file c-common.c.

Referenced by c_parser_postfix_expression(), and finish_fname().

const char* fname_string ( unsigned  rid  ) 

Definition at line 1146 of file c-common.c.

References fname_var_t::decl, and fname_as_string().

static bool get_nonnull_operand ( tree  arg_num_expr,
unsigned HOST_WIDE_INT *  valp 
) [static]

Definition at line 6836 of file c-common.c.

References TREE_CODE, TREE_INT_CST_HIGH, TREE_INT_CST_LOW, and TREE_OPERAND.

Referenced by handle_nonnull_attribute(), and nonnull_check_p().

static GTY ( ()   )  [static]

Definition at line 3215 of file c-common.c.

References build_array_type(), build_common_tree_nodes_2(), build_decl, build_function_type(), build_index_type(), build_int_2, build_pointer_type(), build_qualified_type(), build_reference_type(), build_void_list_node(), builtin_types, c_common_signed_type(), c_common_unsigned_type(), c_init_attributes(), c_language, char_array_type_node, char_type_node, clk_cplusplus, complex_double_type_node, complex_float_type_node, complex_integer_type_node, complex_long_double_type_node, const_string_type_node, default_function_type, double_type_node, flag_short_double, float_type_node, g77_integer_type_node, g77_longint_type_node, g77_uinteger_type_node, g77_ulongint_type_node, get_identifier(), HOST_BITS_PER_WIDE_INT, identifier_global_value(), gcc_target::init_builtins, int, int_array_type_node, intDI_type_node, integer_type_node, intHI_type_node, INTMAX_TYPE, intmax_type_node, intQI_type_node, intSI_type_node, intTI_type_node, long_double_type_node, long_integer_type_node, long_long_integer_type_node, long_long_unsigned_type_node, long_unsigned_type_node, main_identifier_node, make_signed_type(), make_unsigned_type(), MODIFIED_WCHAR_TYPE, NULL, NULL_TREE, PTRDIFF_TYPE, ptrdiff_type_node, record_builtin_type(), RID_CHAR, RID_DOUBLE, RID_FLOAT, RID_INT, RID_LONG, RID_MAX, RID_SHORT, RID_SIGNED, RID_UNSIGNED, RID_VOID, RID_WCHAR, set_sizetype(), short_integer_type_node, short_unsigned_type_node, signed_char_type_node, signed_size_type_node, signed_wchar_type_node, size_int, SIZE_TYPE, size_type_node, sizetype, string_type_node, targetm, TREE_CODE, TREE_TYPE, TREE_UNSIGNED, TYPE_PRECISION, TYPE_QUAL_CONST, UINTMAX_TYPE, uintmax_type_node, unsigned_char_type_node, unsigned_intDI_type_node, unsigned_intHI_type_node, unsigned_intQI_type_node, unsigned_intSI_type_node, unsigned_intTI_type_node, unsigned_ptrdiff_type_node, unsigned_type_node, unsigned_wchar_type_node, va_list_arg_type_node, va_list_ref_type_node, va_list_type_node, void_list_node, void_type_node, void_zero_node, wchar_array_type_node, wchar_type_node, widest_integer_literal_type_node, widest_unsigned_literal_type_node, WINT_TYPE, and wint_type_node.

static tree handle_alias_attribute ( tree node,
tree  name,
tree  args,
flags  ,
bool no_add_attrs 
) [static]

static tree handle_aligned_attribute ( tree node,
name  ,
tree  args,
int  flags,
bool no_add_attrs 
) [static]

static tree handle_always_inline_attribute ( tree node,
tree  name,
args  ,
flags  ,
bool no_add_attrs 
) [static]

Definition at line 5564 of file c-common.c.

References IDENTIFIER_POINTER, NULL_TREE, TREE_CODE, and warning.

static tree handle_cleanup_attribute ( tree node,
tree  name,
tree  args,
flags  ,
bool no_add_attrs 
) [static]

static tree handle_common_attribute ( tree node,
tree  name,
args  ,
flags  ,
bool no_add_attrs 
) [static]

Definition at line 5489 of file c-common.c.

References DECL_COMMON, IDENTIFIER_POINTER, NULL_TREE, TREE_CODE, and warning.

static tree handle_const_attribute ( tree node,
tree  name,
args  ,
flags  ,
bool no_add_attrs 
) [static]

static tree handle_constructor_attribute ( tree node,
tree  name,
args  ,
flags  ,
bool no_add_attrs 
) [static]

static tree handle_deprecated_attribute ( tree node,
tree  name,
args  ,
int  flags,
bool no_add_attrs 
) [static]

static tree handle_destructor_attribute ( tree node,
tree  name,
args  ,
flags  ,
bool no_add_attrs 
) [static]

static tree handle_malloc_attribute ( tree node,
tree  name,
args  ,
flags  ,
bool no_add_attrs 
) [static]

Definition at line 6189 of file c-common.c.

References DECL_IS_MALLOC, IDENTIFIER_POINTER, NULL_TREE, TREE_CODE, and warning.

static tree handle_mode_attribute ( tree node,
tree  name,
tree  args,
flags  ,
bool no_add_attrs 
) [static]

static tree handle_no_instrument_function_attribute ( tree node,
tree  name,
args  ,
flags  ,
bool no_add_attrs 
) [static]

static tree handle_no_limit_stack_attribute ( tree node,
tree  name,
args  ,
flags  ,
bool no_add_attrs 
) [static]

Definition at line 6212 of file c-common.c.

References DECL_INITIAL, DECL_NO_LIMIT_STACK, IDENTIFIER_POINTER, NULL_TREE, and TREE_CODE.

static tree handle_nocommon_attribute ( tree node,
tree  name,
args  ,
flags  ,
bool no_add_attrs 
) [static]

Definition at line 5467 of file c-common.c.

References DECL_COMMON, IDENTIFIER_POINTER, NULL_TREE, TREE_CODE, and warning.

static tree handle_noinline_attribute ( tree node,
tree  name,
args  ,
flags  ,
bool no_add_attrs 
) [static]

Definition at line 5542 of file c-common.c.

References DECL_UNINLINABLE, IDENTIFIER_POINTER, NULL_TREE, TREE_CODE, and warning.

static tree handle_nonnull_attribute ( tree node,
name  ,
tree  args,
flags  ,
bool no_add_attrs 
) [static]

static tree handle_noreturn_attribute ( tree node,
tree  name,
args  ,
flags  ,
bool no_add_attrs 
) [static]

static tree handle_nothrow_attribute ( tree node,
tree  name,
args  ,
flags  ,
bool no_add_attrs 
) [static]

Definition at line 6859 of file c-common.c.

References IDENTIFIER_POINTER, NULL_TREE, TREE_CODE, TREE_NOTHROW, and warning.

static tree handle_packed_attribute ( tree node,
tree  name,
args  ,
int  flags,
bool no_add_attrs 
) [static]

static tree handle_pure_attribute ( tree node,
tree  name,
args  ,
flags  ,
bool no_add_attrs 
) [static]

Definition at line 6245 of file c-common.c.

References DECL_IS_PURE, IDENTIFIER_POINTER, NULL_TREE, TREE_CODE, and warning.

static tree handle_section_attribute ( tree node,
name  ,
tree  args,
flags  ,
bool no_add_attrs 
) [static]

static tree handle_tls_model_attribute ( tree node,
tree  name,
tree  args,
flags  ,
bool no_add_attrs 
) [static]

static tree handle_transparent_union_attribute ( tree node,
tree  name,
args  ,
int  flags,
bool no_add_attrs 
) [static]

static tree handle_unused_attribute ( tree node,
tree  name,
args  ,
int  flags,
bool no_add_attrs 
) [static]

static tree handle_used_attribute ( tree pnode,
tree  name,
args  ,
flags  ,
bool no_add_attrs 
) [static]

static tree handle_visibility_attribute ( tree node,
tree  name,
tree  args,
flags  ,
bool no_add_attrs 
) [static]

static tree handle_weak_attribute ( tree node,
name  ,
args  ,
flags  ,
no_add_attrs   
) [static]

Definition at line 6005 of file c-common.c.

References declare_weak(), and NULL_TREE.

static int is_valid_printf_arglist ( tree  arglist  )  [static]

static void merge_tlist ( struct tlist **  to,
struct tlist add,
int  copy 
) [static]

Definition at line 1580 of file c-common.c.

References end, tlist::expr, new_tlist(), tlist::next, next, NULL, tmp2, and tlist::writer.

Referenced by verify_tree().

unsigned int min_precision ( tree  value,
int  unsignedp 
)

static struct tlist* new_tlist ( struct tlist next,
tree  t,
tree  writer 
) [static, read]

static bool nonnull_check_p ( tree  args,
unsigned HOST_WIDE_INT  param_num 
) [static]

Definition at line 6793 of file c-common.c.

References abort, get_nonnull_operand(), HOST_WIDE_INT, TREE_CHAIN, and TREE_VALUE.

Referenced by check_function_nonnull().

void overflow_warning ( tree  value  ) 

static tree expand_unordered_cmp PARAMS ( (tree, tree, enum tree_code, enum tree_code  )  [static]

static tree builtin_function_2 PARAMS ( (const char *, const char *, tree, tree, int, enum built_in_class, int, int, tree  )  [static]

static struct tlist* new_tlist PARAMS ( (struct tlist *, tree, tree  )  [static, read]

static void warn_for_collisions_1 PARAMS ( (tree, tree, struct tlist *, int)   )  [static]

static void warn_for_collisions PARAMS ( (struct tlist *)   )  [static]

static void verify_tree PARAMS ( (tree, struct tlist **, struct tlist **, tree  )  [static]

static void merge_tlist PARAMS ( (struct tlist **, struct tlist *, int)   )  [static]

static void add_tlist PARAMS ( (struct tlist **, struct tlist *, tree, int)   )  [static]

static rtx c_expand_builtin_printf PARAMS ( (tree, rtx, enum machine_mode, enum expand_modifier, int, int)   )  [static]

static rtx c_expand_builtin PARAMS ( (tree, rtx, enum machine_mode, enum expand_modifier  )  [static]

static int is_valid_printf_arglist PARAMS ( (tree  )  [static]

static void builtin_define_float_constants PARAMS ( (const char *, const char *, tree  )  [static]

static void builtin_define_type_precision PARAMS ( (const char *, tree  )  [static]

static void builtin_define_type_max PARAMS ( (const char *, tree, int)   )  [static]

static void builtin_define_with_hex_fp_value PARAMS ( (const char *, tree, int, const char *, const char *)   )  [static]

static void builtin_define_with_int_value PARAMS ( (const char *, HOST_WIDE_INT)   )  [static]

static void builtin_define_with_value PARAMS ( (const char *, const char *, int)   )  [static]

void builtin_define_std PARAMS ( (const char *)   ) 

Definition at line 635 of file mips-tfile.c.

static bool get_nonnull_operand PARAMS ( (tree, unsigned HOST_WIDE_INT *)   )  [static]

static bool nonnull_check_p PARAMS ( (tree, unsigned HOST_WIDE_INT)   )  [static]

static void check_nonnull_arg PARAMS ( (void *, tree, unsigned HOST_WIDE_INT)   )  [static]

static tree handle_packed_attribute PARAMS ( (tree *, tree, tree, int, bool *)   )  [static]

static int constant_fits_type_p PARAMS ( (tree, tree  )  [static]

void lang_expand_function_end PARAMS ( (void  )  [read]

Definition at line 77 of file cplus-dem.c.

int lang_statement_code_p PARAMS ( (enum tree_code  ) 

tree make_fname_decl PARAMS ( (tree, int)   ) 

tree pointer_int_sum ( enum tree_code  resultcode,
tree  ptrop,
tree  intop 
)

Definition at line 2662 of file c-common.c.

Referenced by build_binary_op(), and cp_pointer_int_sum().

int self_promoting_args_p ( tree  parms  ) 

void shadow_warning ( char *  msgid,
tree  name,
tree  decl 
) const

Definition at line 5412 of file c-common.c.

References DECL_SOURCE_FILE, DECL_SOURCE_LINE, IDENTIFIER_POINTER, and warning.

Referenced by pushdecl(), and warn_if_shadowing().

tree shorten_compare ( tree op0_ptr,
tree op1_ptr,
tree restype_ptr,
enum tree_code rescode_ptr 
)

Definition at line 2334 of file c-common.c.

Referenced by build_binary_op().

void start_fname_decls ( void   ) 

int statement_code_p ( enum tree_code  code  ) 

Definition at line 4090 of file c-common.c.

References CASE_LABEL.

tree strip_array_types ( tree  type  ) 

void unsigned_conversion_warning ( tree  result,
tree  operand 
)

Definition at line 1426 of file c-common.c.

Referenced by convert_and_check(), and parser_build_binary_op().

static tree vector_size_helper ( tree  type,
tree  bottom 
) [static]

static void verify_sequence_points ( tree  expr  )  [static]

static void verify_tree ( tree  x,
struct tlist **  pbefore_sp,
struct tlist **  pno_sp,
tree  writer 
) [static]

tree walk_stmt_tree ( tree tp,
walk_tree_fn  func,
void data 
)

static void warn_for_collisions ( struct tlist list  )  [static]

Definition at line 1648 of file c-common.c.

References tlist::expr, tlist::next, tmp, warn_for_collisions_1(), and tlist::writer.

Referenced by verify_sequence_points(), and verify_tree().

static void warn_for_collisions_1 ( tree  written,
tree  writer,
struct tlist list,
int  only_writes 
) [static]

static int warning_candidate_p ( tree  x  )  [static]

Definition at line 1663 of file c-common.c.

References TREE_CODE.

Referenced by verify_tree().


Variable Documentation

Definition at line 821 of file c-common.c.

Initial value:

{
  
  { "format",                 3, 3, false, true,  true,
            handle_format_attribute },
  { "format_arg",             1, 1, false, true,  true,
            handle_format_arg_attribute },
  { NULL,                     0, 0, false, false, false, NULL }
}

Definition at line 907 of file c-common.c.

tree c_global_trees[CTI_MAX]

Definition at line 200 of file c-common.c.

Definition at line 454 of file c-common.c.

Referenced by c_common_decode_option(), and c_common_handle_option().

Definition at line 3774 of file c-common.c.

int dollars_in_ident = DOLLARS_IN_IDENTIFIERS

Definition at line 257 of file c-common.c.

Referenced by c_common_decode_option().

Definition at line 598 of file c-common.c.

Referenced by c_common_decode_option(), and c_cpp_builtins().

Definition at line 538 of file c-common.c.

Referenced by c_common_decode_option(), c_common_handle_option(), and start_decl().

Definition at line 526 of file c-common.c.

Referenced by c_common_decode_option(), c_common_handle_option(), and start_method().

Definition at line 436 of file c-common.c.

Referenced by c_common_decode_option(), and c_common_handle_option().

int flag_hosted = 1

Definition at line 507 of file c-common.c.

Referenced by c_common_decode_option(), c_common_handle_option(), and import_export_decl().

int flag_iso

Definition at line 362 of file c-common.c.

Referenced by ia64_hpux_add_pragma_builtin(), set_std_c89(), and set_std_c99().

Definition at line 366 of file c-common.c.

Definition at line 375 of file c-common.c.

Referenced by set_std_c89(), set_std_c99(), and set_std_cxx98().

int flag_objc

Definition at line 517 of file c-common.c.

Referenced by c_common_decode_option(), and c_common_handle_option().

int flag_rtti = 1

Definition at line 233 of file c-common.c.

Referenced by c_common_decode_option(), and c_common_handle_option().

Definition at line 256 of file c-common.c.

Referenced by c_common_decode_option(), c_common_handle_option(), and grokdeclarator().

int flag_use_cxa_atexit = DEFAULT_USE_CXA_ATEXIT

int flag_weak = 1

if_elt* if_stack [static]

Definition at line 723 of file c-common.c.

Referenced by SE_Guard_Tests().

int if_stack_pointer = 0 [static]

Definition at line 729 of file c-common.c.

int if_stack_space = 0 [static]

Definition at line 726 of file c-common.c.

int max_tinst_depth = 500

Definition at line 664 of file c-common.c.

Referenced by c_common_decode_option(), and c_common_handle_option().

Definition at line 450 of file c-common.c.

Referenced by c_common_decode_option(), and c_common_handle_option().

Definition at line 1526 of file c-common.c.

char* tlist_firstobj = 0 [static]

Definition at line 1519 of file c-common.c.

Referenced by verify_sequence_points().

Definition at line 1518 of file c-common.c.

Referenced by new_tlist(), verify_sequence_points(), and verify_tree().

int warn_abi = 0

Definition at line 381 of file c-common.c.

Referenced by build_c_cast(), and c_common_decode_option().

Definition at line 311 of file c-common.c.

Referenced by build_array_ref(), c_common_decode_option(), and c_common_handle_option().

Definition at line 612 of file c-common.c.

Referenced by c_common_decode_option(), and maybe_warn_about_overly_private_class().

Definition at line 389 of file c-common.c.

Referenced by c_common_decode_option(), and c_parser_compound_statement_nostart().

int warn_deprecated = 1

Definition at line 418 of file c-common.c.

Referenced by build_binary_op(), c_common_decode_option(), and c_common_handle_option().

int warn_ecpp

Definition at line 307 of file c-common.c.

Referenced by build_binary_op(), and c_common_decode_option().

int warn_implicit = 1

Definition at line 607 of file c-common.c.

Referenced by implicitly_declare(), set_Wimplicit(), and start_function().

Definition at line 422 of file c-common.c.

Referenced by c_common_decode_option(), grokdeclarator(), and set_Wimplicit().

int warn_long_long = 1

int warn_main

Definition at line 399 of file c-common.c.

Referenced by c_common_decode_option(), and start_function().

Definition at line 276 of file c-common.c.

Referenced by c_common_decode_option(), and start_function().

Definition at line 407 of file c-common.c.

Referenced by c_common_decode_option(), and pushdecl().

Definition at line 427 of file c-common.c.

Referenced by c_common_decode_option(), check_function_arguments(), and set_Wformat().

Definition at line 654 of file c-common.c.

Referenced by c_common_decode_option(), c_common_handle_option(), and do_friend().

Definition at line 623 of file c-common.c.

Referenced by c_common_decode_option(), c_common_handle_option(), and finish_struct_1().

Definition at line 618 of file c-common.c.

Referenced by c_common_decode_option(), and finish_struct_1().

int warn_pmf2ptr = 1

int warn_protocol = 1

Definition at line 473 of file c-common.c.

Referenced by c_common_decode_option().

Definition at line 303 of file c-common.c.

Referenced by c_common_decode_option(), diagnose_mismatched_decls(), and duplicate_decls().

Definition at line 460 of file c-common.c.

Referenced by c_common_decode_option().

Definition at line 645 of file c-common.c.

Referenced by c_common_decode_option(), and joust().

Definition at line 394 of file c-common.c.

Referenced by c_cast_expr(), c_common_decode_option(), grokparms(), and start_function().

Definition at line 631 of file c-common.c.

Referenced by build_new_op(), and c_common_decode_option().

Definition at line 385 of file c-common.c.

Definition at line 467 of file c-common.c.

Referenced by c_common_decode_option().

struct tlist* warned_ids [static]

Definition at line 1523 of file c-common.c.


Generated on Wed Apr 8 15:12:13 2009 for Open64 by  doxygen 1.5.6