[JSR308] [Updated] Release 0.9.1 of JSR 308 specification, javac, Checker Framework, and checkers
Mahmood Ali
mahmood at MIT.EDU
Tue May 19 17:16:39 EDT 2009
[Please ignore the previous email]
We have released version 0.9.1 of the JSR 308 specification and
implementation and of the Checker Framework. You can always review
the latest version of the specification at: http://groups.csail.mit.edu/pag/jsr308/specification/java-annotation-design.html
; and download the latest version of these tools at:http://groups.csail.mit.edu/pag/jsr308/
.
The JSR 308 implementation is a backward-compatible extension to
javac. The Checker Framework makes it easy to write a tool that finds
or prevents errors; the tool is expressed as a type-checker for a
pluggable type system. The Checker Framework distribution includes
sample checkers.
This release includes many bug fixes, mainly related to parsing
annotations in array levels, unexpected compiler javac errors, and not
reading annotations in skeleton files. Also, the release includes
some API changes (detailed below) that ease using the platform.
The changlogs of the specification and the implementations appear below.
- Mahmood
---- Changelog for Specification ----
Changes to normative section:
- Add new enum constant ElementType.TYPE_PARAMETER, to represent
declarations of type variables.
- Allow annotations on wildcard bounds.
Changes to non-normative section:
- Add more examples: performance annotions, local/remote...
- Improve explanation of meta-anotating with
@Target(ElementType.TYPE_USE).
---- Changelog for JSR 308 implementation ----
Version 0.9.1, 19 May 2009
Functionality
javac suppresses redundant cast warnings for annotated casts
javap pretty-prints type annotations
Compiler API
Changes to Tree API:
modified AnnotatedTypeTree.getAnnotations() to return
List<AnnotationTree>
added MethodTree.getReceiverAnnotations()
removed MethodTree.getReceiver()
Added abstract class for type processor requiring type information
named AbstractTypeProcessor
Bug fixes
Handled annotations in new array dimensions
Base build
Updated to OpenJDK langtools build b59
---- Changelog for Checker Framework ----
Version 0.9.1, 19 May 2009
Bug fixes
Eliminated unexpected compiler errors when using checkers
Fixed bug related to reading annotations in skeleton files
API Changes
Renamed SourceChecker.process() to .typeProcess()
Manual
Updated troubleshooting info
info for annotations in skeleton files
More information about the JSR308
mailing list