A per function flag (like pure, const) should determine if a function may recurse directly or indirectly. This allows alias disambiguation for local static variables across function calls.
It may be as well a per-call flag. -- Summary: IPA should compute if a function may recurse Product: gcc Version: 4.5.0 Status: UNCONFIRMED Keywords: missed-optimization Severity: enhancement Priority: P3 Component: tree-optimization AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: rguenth at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39689