Hi,

I ran into an odd boundary case with the unit cache today that I
thought I'd report.

I had a class, Foo, using a binary-only annotation, @Bar. Somehow
my classpath was wrong, and so I got a (valid) compilation error
from ecj that Foo couldn't be compiled without Bar.

However, after fixing my classpath issue, the compilation error
didn't go away. After several minutes of ensuring the classpath was,
no really, really right now, I finally realized it's because binary
only annotations are not captured by the CompilationUnit's Dependencies
(being resolved against the valid classes found by the resource oracle,
which won't have binary-only annotations), so I was really seeing
cached compilation errors.

Adding a blank line to Foo kicked off a real compilation and then
all was well.

I don't have any insights on how to recognize this case, nor if
it's worth doing so, given it is likely/hopefully rare.

- Stephen

-- 
http://groups.google.com/group/Google-Web-Toolkit-Contributors

Reply via email to