A tool that figures out API of a component and generates the code that fully uses this API. When checking the source compatibility of versions v1 and v2 of a component (library), we first let the tool generate the code for version v1 and then try to compile it against version v2. If it compiles, the two versions are source compatible (with a few exceptions that are not checked by the generated code).
OpenGrok is a fast and usable source code search and cross reference engine. It helps you search, cross-reference and navigate your source tree. It can understand various program file formats and version control histories like Mercurial, Git, SCCS, RCS, CVS, Subversion, Teamware, ClearCase, Perforce, Monotone and Bazaar. In other words it lets you grok (profoundly understand) source code and is developed in the open, hence the name OpenGrok. It is written in Java.