128 const char *attr_name,
146 if (l > 4 && s[0] ==
'_' && s[1] ==
'_' && s[l - 1] ==
'_' && s[l - 2] ==
'_')
373 static constexpr char mode_chars[5] = {
'-',
'r',
'w',
'x',
'^' };
378 "none",
"read_only",
"write_only",
"read_write"
void maybe_diag_alias_attributes(tree, tree)
Definition attribs.cc:2302
bool is_function_default_version(const tree)
Definition attribs.cc:1280
bool simple_cst_list_equal(const_tree, const_tree)
Definition attribs.cc:1392
int attribute_list_contained(const_tree, const_tree)
Definition attribs.cc:2059
tree build_type_attribute_variant(tree, tree)
Definition attribs.cc:1637
hash_map< rdwr_access_hash, attr_access > rdwr_map
Definition attribs.h:402
int comp_type_attributes(const_tree, const_tree)
Definition attribs.cc:1493
void init_attributes(void)
Definition attribs.cc:317
tree lookup_attribute_by_prefix(const char *attr_name, tree list)
Definition attribs.h:280
char * sorted_attr_string(tree)
Definition attribs.cc:1109
bool attribute_value_equal(const_tree, const_tree)
Definition attribs.cc:1453
tree make_dispatcher_decl(const tree)
Definition attribs.cc:1248
bool is_attribute_namespace_p(const char *attr_ns, const_tree attr)
Definition attribs.h:204
tree private_lookup_attribute(const char *attr_name, size_t attr_len, tree list)
Definition attribs.cc:2106
tree merge_dllimport_decl_attributes(tree, tree)
tree decl_attributes(tree *, tree, int, tree=NULL_TREE)
Definition attribs.cc:622
tree build_type_attribute_qual_variant(tree, tree, int)
Definition attribs.cc:1308
struct scoped_attributes * register_scoped_attributes(const scoped_attribute_specs &, bool=false)
Definition attribs.cc:125
void duplicate_one_attribute(tree *, tree, const char *)
Definition attribs.cc:1794
bool cxx11_attribute_p(const_tree)
Definition attribs.cc:1039
const struct attribute_spec * lookup_attribute_spec(const_tree)
Definition attribs.cc:401
bool any_nonignored_attribute_p(tree)
Definition attribs.cc:586
tree get_attribute_name(const_tree)
Definition attribs.cc:1055
tree merge_attributes(tree, tree)
Definition attribs.cc:1727
bool attribute_ignored_p(tree)
Definition attribs.cc:559
void apply_tm_attr(tree, tree)
Definition attribs.cc:1066
void copy_attributes_to_builtin(tree)
Definition attribs.cc:1820
int attribute_list_equal(const_tree, const_tree)
Definition attribs.cc:2041
attr_access * get_parm_access(rdwr_map &, tree, tree=current_function_decl)
Definition attribs.cc:2512
tree affects_type_identity_attributes(tree, bool=true)
Definition attribs.cc:1599
bool common_function_versions(tree, tree)
Definition attribs.cc:1184
tree make_attribute(const char *, const char *, tree)
Definition attribs.cc:1075
tree merge_type_attributes(tree, tree)
Definition attribs.cc:1774
unsigned decls_mismatched_attributes(tree, tree, tree, const char *const[], pretty_printer *)
Definition attribs.cc:2205
tree remove_attribute(const char *, tree)
Definition attribs.cc:1678
tree build_decl_attribute_variant(tree, tree)
Definition attribs.cc:1296
bool cmp_attribs(const char *attr1, size_t attr1_len, const char *attr2, size_t attr2_len)
Definition attribs.h:174
bool canonicalize_attr_name(const char *&s, T &l)
Definition attribs.h:144
tree handle_dll_attribute(tree *, tree, tree, int, bool *)
tree restrict_type_identity_attributes_to(tree, tree)
Definition attribs.cc:1612
tree get_attribute_namespace(const_tree)
Definition attribs.cc:423
bool is_attribute_p(const char *attr_name, const_tree ident)
Definition attribs.h:192
tree lookup_attribute(const char *attr_name, tree list)
Definition attribs.h:223
void init_attr_rdwr_indices(rdwr_map *, tree)
Definition attribs.cc:2363
tree merge_decl_attributes(tree, tree)
Definition attribs.cc:1784
void free_attr_data()
Definition attribs.cc:306
void handle_ignored_attributes_option(vec< char * > *)
Definition attribs.cc:230
Definition pretty-print.h:244
const union tree_node * const_tree
Definition coretypes.h:98
union tree_node * tree
Definition coretypes.h:97
T * ggc_alloc(ALONE_CXX_MEM_STAT_INFO)
Definition ggc.h:184
tree get_identifier_with_length(const char *text, size_t length)
Definition stringpool.cc:119
static void free_lang_data(tree)
Definition attribs.cc:2580
access_mode mode
Definition attribs.h:344
tree to_internal_string() const
Definition attribs.cc:2534
static constexpr char mode_names[4][11]
Definition attribs.h:376
const char * str
Definition attribs.h:320
tree ptr
Definition attribs.h:322
static constexpr char mode_chars[5]
Definition attribs.h:373
unsigned ptrarg
Definition attribs.h:335
bool static_p
Definition attribs.h:351
const char * end
Definition attribs.h:320
bool internal_p
Definition attribs.h:348
tree to_external_string() const
Definition attribs.cc:2544
static access_mode from_mode_char(char)
Definition attribs.h:383
unsigned sizarg
Definition attribs.h:336
tree size
Definition attribs.h:328
unsigned HOST_WIDE_INT minsize
Definition attribs.h:341
std::string array_as_string(tree) const
Definition attribs.cc:2624
unsigned vla_bounds(unsigned *) const
Definition attribs.cc:2560
Definition hash-traits.h:122
const char * ns
Definition attribs.h:26
array_slice< const attribute_spec > attributes
Definition attribs.h:27
#define NULL
Definition system.h:50
#define gcc_unreachable()
Definition system.h:848
#define gcc_checking_assert(EXPR)
Definition system.h:828
tree current_function_decl
Definition toplev.cc:124
#define IDENTIFIER_LENGTH(NODE)
Definition tree.h:1194
#define TREE_CHAIN(NODE)
Definition tree.h:511
#define IDENTIFIER_POINTER(NODE)
Definition tree.h:1196
access_mode
Definition tree.h:5830
@ access_deferred
Definition tree.h:5835
@ access_none
Definition tree.h:5831
@ access_read_write
Definition tree.h:5834
@ access_write_only
Definition tree.h:5833
@ access_read_only
Definition tree.h:5832
#define NULL_TREE
Definition tree.h:317