1. A method comprising the following computer-executable acts: receiving source code that is retained in a computer-readable medium of a computing device; generating a points-to graph based at least in part upon execution of a points-to analysis algorithm over the received source code, wherein the points-to graph is a directed graph that comprises a plurality of nodes and a plurality of edges, wherein nodes of the points-to graph represent pointers in the source code and edges represent inclusion relationships in the source code; inferring target types for generic pointers in the source code based at least in part upon the points-to graph; and causing the target types for the generic pointers in the source code to be stored in the computer-readable medium.