On Thu, 2005-07-07 at 12:40 -0400, Michael Tegtmeyer wrote:
> > pass_init_datastructures is still necessary.
> 
> That was the problem-thanks.
> 
> New question (or still the original rather), is there existing 
> functionality to obtain the variables used in a function with external 
> visibility for that function-or in other words-any variable not local to 
> that function? is_global_vars() works for globals but misses:
> 
> struct foo {
>       int i;
>       void bar() {i=10;}
> };


> In bar, 'i' is not global but is not passed in via arguments either. 
> referenced_vars contains the 'this' ptr.

i is not a regular variable here, it's a member of a structure.

>  Is there anything existing that 
> will obtain 'i' as an external variable w.r.t. bar?

No, but only because it's not really a variable, it's a structure
member, and only ever accessed as such.  It thus doesn't appear as a
VAR_DECL (in gcc terms), it appears in component accesses as a
FIELD_DECL. 




> 
> Thanks again,
> Mike

Reply via email to