Origin Tracking helps diagnose null pointer exceptions by storing each null's originating program location in the nulls themselves. Compiler support redefines operations to handle nulls containing origins, and the VM reports a null's origin if it causes a null pointer exception. Origin Tracking is described and evaluated in "Tracking Bad Apples: Reporting the Origin of Null and Undefined Value Errors," OOPSLA 2007.
Included are a patch against Jikes RVM 2.4.6 and a README. Questions, problems, and feedback are welcome.
Log in to post a comment.