Thanks for doing this! > > + gimple_ranger *ranger = new gimple_ranger; > + path_range_query *query = new path_range_query (*ranger, /*resolve=*/true);
Hmmm, it looks like both clients are now instantiating a gimple_ranger just so they can pass it down to the path_range_query. Maybe we should have another ctor with just: path_range_query (bool resolve); ...and have it allocate its own ranger. Does this seem like a useful improvement? For that matter, resolve should default to true. The option is only there so the backward threader can run in a "light" mode (early threading, etc). Aldy