[Checkers] Problem with implicit annotations on files not specified on command line

Matt Papi mpapi at csail.mit.edu
Sat Apr 5 14:26:44 EDT 2008


Mike,

I'm testing a fix for this right now; I'll have it in SVN shortly.

- Matt

On Sat, Apr 5, 2008 at 11:15 AM, Michael Ernst <mernst at csail.mit.edu> wrote:
> Matt-
>
>  When I run
>
>   cd $inv/java
>   make interned
>
>  I get this error message:
>
>  ./daikon/Daikon.java:1596: incompatible types.
>  found   :  daikon.VarInfo[@checkers.quals.Interned ]
>  required:  daikon.VarInfo[]
>                             exit_vars);
>                             ^
>
>  In the program, the found and required types are both "VarInfo[]", but one
>  of them has had "@Interned" added to it whereas the other has not.
>
>  exit_vars is declared as
>
>         VarInfo[] exit_vars = new VarInfo[len];
>
>  and the constructor to which exit_vars is passed as the last argument is
>  declared as
>
>   public PptTopLevel (String name, PptType type, List<ParentRelation> parents,
>                       EnumSet<PptFlags> flags, List<String> ppt_successors,
>                       String function_id, int bb_length, VarInfo[] var_infos) {
>
>  The problem seems to be that I did not include PptTopLevel.java in the
>  argument list to the checker.  I don't think I should have to do this.
>  PptTopLevel.java doesn't contain any @Interned annotations, and I don't
>  want to check it, but nonetheless its signatures should be properly
>  recognized (including implicit annotations).  I will try to work around
>  this, but I am not sure whether I will be able to.  (The interned case
>  study focuses on just a few files of Daikon to avoid the need to annotate
>  the entire thing, and to avoid false positives in the many files where
>  interning is not used in an interesting way.)
>
>                      Thanks,
>
>                     -Mike
>
>  _______________________________________________
>  checkers mailing list
>  checkers at lists.csail.mit.edu
>  https://lists.csail.mit.edu/mailman/listinfo/checkers
>



More information about the checkers mailing list