What exactly does is_variable_sized test for?
Amittai Aviram
amittai.Aviram@yale.edu
Wed Feb 22 04:51:00 GMT 2012
I am trying to understand some code in gcc/omp-low.c that calls the predicate is_variable_sized:
omp-low.c:is_variable_sized (const_tree expr)
where const_tree is a pointer to a constant tree_node, which is a union of a bunch of structures, but, in this case, it must be (I think) a tree_var_decl structure. It is defined as follows:
static inline bool
is_variable_sized (const_tree expr)
{
return !TREE_CONSTANT (TYPE_SIZE_UNIT (TREE_TYPE (expr)));
}
Unpacking the macros, I get
return !expr->common.type->type.size_unit->base.constant_flag;
But what exactly does this mean? What kind of C variable counts as "variable sized"? Does that mean an array or struct type? Thanks!
Amittai Aviram
PhD Student in Computer Science
Yale University
646 483 2639
amittai.aviram@yale.edu
http://www.amittai.com
More information about the Gcc-help
mailing list