5. A system comprising: an ingest module comprising one or more circuits to: create a set of defined preprocessor directive symbols including unique preprocessor directive symbols defined in one or more build or sub-build files of a software program, creating the set of defined preprocessor directive symbols including analyzing the one or more build or sub-build files for a preprocessor directive and recording symbols immediately following the preprocessor directive as a defined preprocessor directive symbol in the set of defined preprocessor directive symbols; create a set of used preprocessor directive symbols including unique preprocessor directive symbols defined in one or more source code files of the software program, creating the set of used preprocessor directive symbols including analyzing the one or more source code files for the preprocessor directive and recording symbols immediately following the preprocessor directive as a used preprocessor directive symbol in the set of used preprocessor directive symbols; create a set of accurately used preprocessor directive symbols that includes only preprocessor directive symbols in the set of used preprocessor directive symbols and the set of defined preprocessor directive symbols; create a set of unused preprocessor directive symbols that includes preprocessor directive symbols in the set of defined preprocessor directive symbols and not in the set of used preprocessor directive symbols by including preprocessor directive symbols in the set of defined preprocessor directive symbols and not in the set of accurately used preprocessor directive symbols in the set of unused preprocessor directive symbols; create a set of undefined preprocessor directive symbols that includes preprocessor directive symbols in the set of used preprocessor directive symbols and not in the set of defined preprocessor directive symbols by including preprocessor directive symbols in the set of used preprocessor directive symbols and not in the set of accurately used preprocessor directive symbols in the set of undefined preprocessor directive symbols; identify a preprocessor directive symbols that is in the set of unused preprocessor directive symbols; and a heuristic module comprising one or more circuits coupled to the ingest module to compare the identified preprocessor directive symbol to each preprocessor directive symbol in the set of undefined preprocessor directive symbols by respectively applying a heuristic to the identified preprocessor directive symbol and each preprocessor directive from the set of undefined preprocessor directive symbols, and determine a likelihood that the identified defined preprocessor directive symbol is presented erroneously as a respective preprocessor directive symbols of the set of undefined preprocessor directive symbols based on a result of applying the heuristic.
6. The system of claim 5 , wherein the one or more circuits of the heuristic module are configured to compare the determined likelihood to a threshold value, and the system further comprises: a report module including one or more circuits coupled to the heuristic module to report that the undefined preprocessor directive symbol is likely presented erroneously in the source code file as the unused preprocessor directive symbol in response to the one or more circuits of the heuristic module determining the determined likelihood is less than the threshold value.