Fix typos in syntheticItems
Fix red bots
Change-Id: I33ab1be786e03a7a8d81b53d878900f8fbf472a2
diff --git a/src/main/java/com/android/tools/r8/synthesis/SyntheticItems.java b/src/main/java/com/android/tools/r8/synthesis/SyntheticItems.java
index 4baf66c..71ae785 100644
--- a/src/main/java/com/android/tools/r8/synthesis/SyntheticItems.java
+++ b/src/main/java/com/android/tools/r8/synthesis/SyntheticItems.java
@@ -482,7 +482,7 @@
DexType type,
AppView<?> appView) {
// Fast path is that the synthetic is already present. If so it must be a program class.
- DexClass dexClass = appView.appInfo().definitionFor(type);
+ DexClass dexClass = appView.definitionFor(type);
if (dexClass != null) {
assert dexClass.isProgramClass();
return dexClass.asProgramClass();
@@ -490,16 +490,24 @@
// Slow path creates the class using the context to make it thread safe.
synchronized (type) {
// Recheck if it is present now the lock is held.
- dexClass = appView.appInfo().definitionFor(type);
+ dexClass = appView.definitionFor(type);
if (dexClass != null) {
assert dexClass.isProgramClass();
return dexClass.asProgramClass();
}
- DexProgramClass clazz =
+ assert !isSyntheticClass(type);
+ DexProgramClass dexProgramClass =
internalCreateProgramClass(
- kind, classConsumer, outerContext, type, appView.dexItemFactory());
- onCreationConsumer.accept(clazz);
- return clazz;
+ kind,
+ syntheticProgramClassBuilder -> {
+ syntheticProgramClassBuilder.setUseSortedMethodBacking(true);
+ classConsumer.accept(syntheticProgramClassBuilder);
+ },
+ outerContext,
+ type,
+ appView.dexItemFactory());
+ onCreationConsumer.accept(dexProgramClass);
+ return dexProgramClass;
}
}