25 #include "pips_config.h"
76 for(pe=el; !
ENDP(pe);
POP(pe)) {
125 list function_local_entities =
NIL;
130 function_local_entities =
159 list function_local_entities =
void free_entity(entity p)
void GenericCleanEntities(list el, entity function, bool fortran_p)
Useful when the user edit a source file and parse it again or when a program transformation is perfor...
void CleanLocalEntities(entity function)
Fortran version.
static void set_current_function(entity function)
void CCleanLocalEntities(entity function)
C language version.
void GenericCleanLocalEntities(entity function, bool fortran_p)
static entity current_function
static const char * current_function_local_name
static bool local_entity_of_current_function_p(entity e)
void RemoveLocalEntities(entity function)
Useful for ParserError()?
bool compilation_unit_p(const char *module_name)
The names of PIPS entities carry information about their nature.
#define ENDP(l)
Test if a list is empty.
void gen_remove(list *cpp, const void *o)
remove all occurences of item o from list *cpp, which is thus modified.
#define POP(l)
Modify a list pointer to point on the next element of the list.
#define NIL
The empty list (nil in Lisp)
#define CAR(pcons)
Get the value of the first element of a list.
void gen_free_list(list l)
free the spine of the list
#define list_undefined
Undefined list definition :-)
#define pips_debug
these macros use the GNU extensions that allow variadic macros, including with an empty list.
#define pips_assert(what, predicate)
common macros, two flavors depending on NDEBUG
#define same_string_p(s1, s2)
list gen_filter_tabulated(bool(*)(gen_chunk *), int)
returns the list of entities with this caracteristics.
const char * entity_local_name(entity e)
entity_local_name modified so that it does not core when used in vect_fprint, since someone thought t...
const char * module_local_name(entity e)
Returns the module local user name.
bool top_level_entity_p(entity e)
Check if the scope of entity e is global.
const char * entity_module_name(entity e)
See comments about module_name().
#define value_undefined_p(x)
#define storage_formal_p(x)
#define entity_storage(x)
#define code_declarations(x)
#define type_undefined_p(x)
#define storage_return_p(x)
#define storage_undefined_p(x)
#define entity_domain
newgen_syntax_domain_defined
#define storage_undefined
#define entity_initial(x)
The structure used to build lists in NewGen.