[Checkers] Javari checker possibly ready for release

Telmo telmo at MIT.EDU
Fri Mar 7 05:18:25 EST 2008

After this last night of debugging, the Javari checker passes the 3 basic 
tests; this version has been checked in on the repository.

The last changes refer to "RoMaybe variables"; while it is not clear to me 
that they are added on the specification, they must be supported, such 
that variables may be passed around as follows:

@RoMaybe Node foo(@RoMaybe Node arg) {
    @RoMaybe next = arg.getNext();
    // print information about next
    return next;

Since those checks may depend on context, if this-mutable variables are 
thrown in the mix, some assignment of annotations to variables must be 
done with dependencies on the VisitorState, which keeps information about 
the receiver and class type. However, none of the forms of 
commonAssignmentCheck accepts AnnotatedTypeMirror parameters both as 
variables and values, so the functionality of commonAssignmentCheck has 
been partially reimplemented on the overriding method at JavariVisitor, 
for now, and no calls to the super method are made.

Constructors still do not behave properly with RoMaybe; I tried touching 
the code that deals with it (visitNewClass, on JavariVisitor, is commented 
out and has a stub functionality active at its end), but the old code 
causes many tests to fail when activated. I don't understand yet what is 
happening there, so I do not plan on changing it before the release today.
(In fact, unless told otherwise I don't plan on touching the code again 
before the release.)


More information about the checkers mailing list