typetools / typetools/checker-framework

Whole-program inference: don't insert defaulted or implicited annotations

Open
#683 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
Java
Stars
1.1k
Forks
440
Avg merge
1d 12h
Merged PRs (30d)
134

Description

If the inferred annotation is the same as the defaulted, implicited, or any other non-explicitly-written annotation used by the checker, then whole-program inference should not insert the annotation. Currently, this only works for defaults and implicits specified via meta-annotations.
(This issue is referring to the whole-program inference in PR #612)

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the whole-program inference implementation described in PR #612 and trace how the checker distinguishes explicitly written annotations from defaults, implicits, and other annotations. Done means inference skips insertion whenever the inferred annotation matches any non-explicit annotation, not only meta-annotation defaults and implicits.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
devtools
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
32/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.