- First off, all LPS are benchmarked in the AstProcessor, having this here was inconsistent
- Since these passes can be triggered by the symbol table LPS phase, we ended up double counting total time.
- This however puts all disambiguation passes done for symbol table as symbol table cost, which although accurate,
may not help to identify speed up opportunities as clearly, but the benchmark is not a profiling tool.
- The numbers relate to how they are executed, but don't necessarilly imply a required order
(ie: Comment Assignment could be done at any point)
- Since the benchmark report sorts by time spent on each one, the numbered labels are simply confusing
- This is probably not the best solution (maybe the Infer logic needs to remove
the check and handle it seamlessly?) but that code is too complex for me to make that call
- An IllegalStateException is produced when the inference context corresponds
to an invocation of an unresolved method.
- The rule effectively can't determine if the diamond oeprator can be used, but the current message of
"overload resolution is not complete" is noisy, not actionable to the user
(the issue is a missing class in the auxclasspath, not the overload resolution),
and prevents the rule from continuing to analyze the current file.
- Since annotated primitives are now stand-alone instances,
ensure they share the supertypes for the unnanotated version,
otherwise, NPEs occur during inference.