1. 13
  1.  

  2. 3

    This is very clever; it’s recovering receiver names from the bytecode instruction that causes the NPE, not from extra generated code. This means it automatically supports old JARs as well as other JVM languages that generate similar bytecode.