#include "config.h"
#include "system.h"
#include "tree.h"
+#include "rtl.h"
#include "flags.h"
#include "function.h"
#include "output.h"
+#include "expr.h"
#include "c-tree.h"
#include "c-lex.h"
#include "toplev.h"
array type. */
char_array_type_node
= build_array_type (char_type_node, array_domain_type);
+
/* Likewise for arrays of ints. */
int_array_type_node
= build_array_type (integer_type_node, array_domain_type);
+
/* This is for wide string constants. */
wchar_array_type_node
= build_array_type (wchar_type_node, array_domain_type);
+ record_component_aliases (char_array_type_node);
+ record_component_aliases (int_array_type_node);
+ record_component_aliases (wchar_array_type_node);
+
void_list_node = tree_cons (NULL_TREE, void_type_node, NULL_TREE);
default_function_type
type = build_array_type (type, itype);
if (type_quals)
type = c_build_qualified_type (type, type_quals);
+ record_component_aliases (type);
#if 0 /* don't clear these; leave them set so that the array type
or the variable is itself const or volatile. */
&& TREE_CODE (type) == ARRAY_TYPE && TYPE_DOMAIN (type) == 0)
{
type = build_array_type (TREE_TYPE (type), 0);
+ record_component_aliases (type);
if (size_varies)
C_TYPE_VARIABLE_SIZE (type) = 1;
}
type = build_array_type (c_build_qualified_type (TREE_TYPE (type),
type_quals),
TYPE_DOMAIN (type));
+ record_component_aliases (type);
#if 0 /* Leave the field const or volatile as well. */
type_quals = TYPE_UNQUALIFIED;
#endif
}
decl = build_decl (FIELD_DECL, declarator, type);
+ TREE_ADDRESSABLE (decl) = ! bitfield;
if (size_varies)
C_DECL_VARIABLE_SIZE (decl) = 1;
}
type = build_array_type (c_build_qualified_type (TREE_TYPE (type),
type_quals),
TYPE_DOMAIN (type));
+ record_component_aliases (type);
#if 0 /* Leave the variable const or volatile as well. */
type_quals = TYPE_UNQUALIFIED;
#endif