Hello, Constraints: 1. I am using GCC 4.1.2. 2. I would prefer not to make any changes to the GCC source for this task. 3. I do not require code generation or anything past GIMPLE. Goal: I'm trying to demo a simple static analysis technique which requires me to store all the functions of the source being compiled for later analysis. It seems that some time after a given "struct function" is processed by GCC, it is purged from memory. What I've tried: 1. I've setting ggc-min-heapsize = RAM_SIZE, but I was still unable to access the cfg within the "struct function" 2. I looked into using the various copy functions available in tree-inline.c, some are static and others don't seem to return anything (tree-inline.c:save_body). 3. In a previous project, I created parallel graph data structures to those found in GCC. These served as copies for the GCC structures and were allocated with xmalloc (no garbage collection). This time, I would prefer to use as much existing GCC code as possible. Question: What would be the easiest way to make sure that some copy of each "struct function," is retained throughout the entire execution of the GCC compilation? Any help would be greatly appreciated. Thank you, Paul