1. A method for analyzing a program, comprising: determining a set of functions required by the program by performing local type constraint analysis at intermediate language instruction level: and a call path that may reach a function containing such instruction.