diff options
Diffstat (limited to 'java/com/google/turbine/binder/CompUnitPreprocessor.java')
-rw-r--r-- | java/com/google/turbine/binder/CompUnitPreprocessor.java | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/java/com/google/turbine/binder/CompUnitPreprocessor.java b/java/com/google/turbine/binder/CompUnitPreprocessor.java index 9e9a0bb..970dc4b 100644 --- a/java/com/google/turbine/binder/CompUnitPreprocessor.java +++ b/java/com/google/turbine/binder/CompUnitPreprocessor.java @@ -149,7 +149,7 @@ public final class CompUnitPreprocessor { types.add(new SourceBoundClass(sym, owner, children, access, decl)); } } - return result.build(); + return result.buildOrThrow(); } /** Desugars access flags for a class. */ @@ -175,6 +175,9 @@ public final class CompUnitPreprocessor { case ANNOTATION: access |= TurbineFlag.ACC_ABSTRACT | TurbineFlag.ACC_INTERFACE | TurbineFlag.ACC_ANNOTATION; break; + case RECORD: + access |= TurbineFlag.ACC_SUPER | TurbineFlag.ACC_FINAL; + break; } return access; } @@ -195,12 +198,14 @@ public final class CompUnitPreprocessor { case INTERFACE: case ENUM: case ANNOTATION: + case RECORD: access |= TurbineFlag.ACC_STATIC; break; case CLASS: if ((enclosing & (TurbineFlag.ACC_INTERFACE | TurbineFlag.ACC_ANNOTATION)) != 0) { access |= TurbineFlag.ACC_STATIC; } + break; } // propagate strictfp to nested types @@ -219,6 +224,8 @@ public final class CompUnitPreprocessor { Optional.empty(), ImmutableList.of(), ImmutableList.of(), + ImmutableList.of(), + ImmutableList.of(), TurbineTyKind.INTERFACE, /* javadoc= */ null); } |