Skip to content

Commit

Permalink
No bytecode storage flag first
Browse files Browse the repository at this point in the history
  • Loading branch information
Ao-senXiong committed Aug 15, 2024
1 parent d30ebee commit af94341
Show file tree
Hide file tree
Showing 3 changed files with 10 additions and 0 deletions.
2 changes: 2 additions & 0 deletions docs/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@ Version 3.42.0-eisop5 (July ?, 2024)

**User-visible changes:**

The new command-line argument '-AnoBytecodeStorage' allows the option to not store defaulted annotations in bytecode.

Removed support for the `-Anocheckjdk` option, which was deprecated in version 3.1.1.
Use `-ApermitMissingJdk` instead.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -187,6 +187,10 @@
// org.checkerframework.framework.source.SourceChecker.useConservativeDefault
"useConservativeDefaultsForUncheckedCode",

// Whether to store defaulted annotations in bytecode.
// org.checkerframework.framework.type.AnnotatedTypeFactory.postProcessClassTree
"noBytecodeStorage",

// Whether to assume sound concurrent semantics or
// simplified sequential semantics
// org.checkerframework.framework.flow.CFAbstractTransfer.sequentialSemantics
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1528,6 +1528,10 @@ public void preProcessClassTree(ClassTree classTree) {}
* to override this method if storing defaulted types is not desirable.
*/
public void postProcessClassTree(ClassTree tree) {
if (!checker.hasOption("noBytecodeStorage")) {
TypesIntoElements.store(processingEnv, this, tree);
DeclarationsIntoElements.store(processingEnv, this, tree);
}
TypesIntoElements.store(processingEnv, this, tree);
DeclarationsIntoElements.store(processingEnv, this, tree);

Expand Down

0 comments on commit af94341

Please sign in to comment.