Mark synthesized bridges as library method overrides

Change-Id: I518a1e24304934e8adf243307f0703f11ac3c171
diff --git a/src/main/java/com/android/tools/r8/shaking/Enqueuer.java b/src/main/java/com/android/tools/r8/shaking/Enqueuer.java
index 6a6e4bb..9df6b42 100644
--- a/src/main/java/com/android/tools/r8/shaking/Enqueuer.java
+++ b/src/main/java/com/android/tools/r8/shaking/Enqueuer.java
@@ -2478,11 +2478,15 @@
       return;
     }
     DexEncodedMethod methodToKeep = action.getMethodToKeep();
+    DexEncodedMethod singleTarget = action.getSingleTarget();
     DexClass clazz = getProgramClassOrNull(methodToKeep.method.holder);
-    if (methodToKeep != action.getSingleTarget()) {
+    if (methodToKeep != singleTarget) {
       // Insert a bridge method.
       if (appView.definitionFor(methodToKeep.method) == null) {
         clazz.appendVirtualMethod(methodToKeep);
+        if (singleTarget.isLibraryMethodOverride().isTrue()) {
+          methodToKeep.setLibraryMethodOverride(OptionalBool.TRUE);
+        }
         appView.appInfo().invalidateTypeCacheFor(methodToKeep.method.holder);
         // The addition of a bridge method can lead to a change of resolution, thus the cached
         // resolution targets are invalid.