Remove `ObjcProvider` keys and flags that are no longer used anywhere.

RELNOTES: None.
PiperOrigin-RevId: 375175411
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/AppleBinary.java b/src/main/java/com/google/devtools/build/lib/rules/objc/AppleBinary.java
index 1ba2e15..bf9d340 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/AppleBinary.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/AppleBinary.java
@@ -15,7 +15,6 @@
 package com.google.devtools.build.lib.rules.objc;
 
 import static com.google.devtools.build.lib.packages.Type.STRING;
-import static com.google.devtools.build.lib.rules.objc.ObjcProvider.MULTI_ARCH_LINKED_BINARIES;
 import static com.google.devtools.build.lib.rules.objc.ObjcRuleClasses.DylibDependingRule.DYLIBS_ATTR_NAME;
 
 import com.google.common.annotations.VisibleForTesting;
@@ -304,7 +303,6 @@
     if (shouldLipo) {
       Artifact outputArtifact =
           ObjcRuleClasses.intermediateArtifacts(ruleContext).combinedArchitectureBinary();
-      objcProviderBuilder.add(MULTI_ARCH_LINKED_BINARIES, outputArtifact);
       builder.setLegacyBinaryArtifact(outputArtifact, getBinaryType(ruleContext));
       new LipoSupport(ruleContext)
           .registerCombineArchitecturesAction(binariesToLipo.build(), outputArtifact, platform);
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/AppleStarlarkCommon.java b/src/main/java/com/google/devtools/build/lib/rules/objc/AppleStarlarkCommon.java
index da97c11..ce1fef1 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/AppleStarlarkCommon.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/AppleStarlarkCommon.java
@@ -180,13 +180,10 @@
 
   @Override
   // This method is registered statically for Starlark, and never called directly.
-  public ObjcProvider newObjcProvider(
-      Boolean usesSwift, Dict<String, Object> kwargs, StarlarkThread thread) throws EvalException {
+  public ObjcProvider newObjcProvider(Dict<String, Object> kwargs, StarlarkThread thread)
+      throws EvalException {
     ObjcProvider.StarlarkBuilder resultBuilder =
         new ObjcProvider.StarlarkBuilder(thread.getSemantics());
-    if (usesSwift) {
-      resultBuilder.add(ObjcProvider.FLAG, ObjcProvider.Flag.USES_SWIFT);
-    }
     for (Map.Entry<String, Object> entry : kwargs.entrySet()) {
       ObjcProvider.Key<?> key = ObjcProvider.getStarlarkKeyForString(entry.getKey());
       if (key != null) {
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/AppleStaticLibrary.java b/src/main/java/com/google/devtools/build/lib/rules/objc/AppleStaticLibrary.java
index e83a3c9..4f7726d 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/AppleStaticLibrary.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/AppleStaticLibrary.java
@@ -14,8 +14,6 @@
 
 package com.google.devtools.build.lib.rules.objc;
 
-import static com.google.devtools.build.lib.rules.objc.ObjcProvider.MULTI_ARCH_LINKED_ARCHIVES;
-
 import com.google.common.collect.ImmutableList;
 import com.google.common.collect.ImmutableListMultimap;
 import com.google.common.collect.ImmutableSet;
@@ -169,9 +167,6 @@
     RuleConfiguredTargetBuilder targetBuilder =
         ObjcRuleClasses.ruleConfiguredTarget(ruleContext, filesToBuild.build());
 
-    objcProviderBuilder.add(
-        MULTI_ARCH_LINKED_ARCHIVES, ruleIntermediateArtifacts.combinedArchitectureArchive());
-
     ObjcProvider objcProvider = objcProviderBuilder.build();
 
     if (appleConfiguration.shouldLinkingRulesPropagateObjc()) {
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/MultiArchBinarySupport.java b/src/main/java/com/google/devtools/build/lib/rules/objc/MultiArchBinarySupport.java
index a83fe55..64d598b 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/MultiArchBinarySupport.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/MultiArchBinarySupport.java
@@ -268,8 +268,7 @@
             .addDeps(propagatedDeps)
             .addObjcProviders(additionalDepProviders)
             .setIntermediateArtifacts(intermediateArtifacts)
-            .setAlwayslink(false)
-            .setLinkedBinary(intermediateArtifacts.strippedSingleArchitectureBinary());
+            .setAlwayslink(false);
 
     return commonBuilder.build();
   }
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCommon.java b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCommon.java
index 5af5799..18e4479 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCommon.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcCommon.java
@@ -22,14 +22,12 @@
 import static com.google.devtools.build.lib.rules.objc.ObjcProvider.IMPORTED_LIBRARY;
 import static com.google.devtools.build.lib.rules.objc.ObjcProvider.J2OBJC_LIBRARY;
 import static com.google.devtools.build.lib.rules.objc.ObjcProvider.LIBRARY;
-import static com.google.devtools.build.lib.rules.objc.ObjcProvider.LINKED_BINARY;
 import static com.google.devtools.build.lib.rules.objc.ObjcProvider.LINKOPT;
 import static com.google.devtools.build.lib.rules.objc.ObjcProvider.LINKSTAMP;
 import static com.google.devtools.build.lib.rules.objc.ObjcProvider.MODULE_MAP;
 import static com.google.devtools.build.lib.rules.objc.ObjcProvider.SDK_DYLIB;
 import static com.google.devtools.build.lib.rules.objc.ObjcProvider.SDK_FRAMEWORK;
 import static com.google.devtools.build.lib.rules.objc.ObjcProvider.SOURCE;
-import static com.google.devtools.build.lib.rules.objc.ObjcProvider.TOP_LEVEL_MODULE_MAP;
 import static com.google.devtools.build.lib.rules.objc.ObjcProvider.UMBRELLA_HEADER;
 import static com.google.devtools.build.lib.rules.objc.ObjcProvider.WEAK_SDK_FRAMEWORK;
 
@@ -116,7 +114,6 @@
     private boolean alwayslink;
     private boolean hasModuleMap;
     private Iterable<Artifact> extraImportLibraries = ImmutableList.of();
-    private Optional<Artifact> linkedBinary = Optional.absent();
     private Iterable<CcCompilationContext> ccCompilationContexts = ImmutableList.of();
     private Iterable<CcCompilationContext> directCCompilationContexts = ImmutableList.of();
     private Iterable<CcLinkingContext> ccLinkingContexts = ImmutableList.of();
@@ -318,14 +315,6 @@
       return this;
     }
 
-    /**
-     * Sets a linked binary generated by this rule to be propagated to dependers.
-     */
-    Builder setLinkedBinary(Artifact linkedBinary) {
-      this.linkedBinary = Optional.of(linkedBinary);
-      return this;
-    }
-
     ObjcCommon build() {
 
       ObjcCompilationContext.Builder objcCompilationContextBuilder =
@@ -452,11 +441,8 @@
         }
         objcProvider.add(MODULE_MAP, moduleMap.getArtifact());
         objcProvider.addDirect(MODULE_MAP, moduleMap.getArtifact());
-        objcProvider.add(TOP_LEVEL_MODULE_MAP, moduleMap);
       }
 
-      objcProvider.addAll(LINKED_BINARY, linkedBinary.asSet());
-
       ObjcCompilationContext objcCompilationContext = objcCompilationContextBuilder.build();
 
       return new ObjcCommon(
diff --git a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProvider.java b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProvider.java
index 34772f8..489200f 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProvider.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/objc/ObjcProvider.java
@@ -37,7 +37,6 @@
 import com.google.devtools.build.lib.packages.Info;
 import com.google.devtools.build.lib.rules.cpp.CcLinkingContext;
 import com.google.devtools.build.lib.rules.cpp.CcLinkingContext.Linkstamp;
-import com.google.devtools.build.lib.rules.cpp.CppModuleMap;
 import com.google.devtools.build.lib.rules.cpp.LibraryToLink;
 import com.google.devtools.build.lib.starlarkbuildapi.apple.ObjcProviderApi;
 import com.google.devtools.build.lib.vfs.PathFragment;
@@ -124,22 +123,6 @@
       new Key<>(LINK_ORDER, "jre_library", Artifact.class);
 
   /**
-   * Single-architecture linked binaries to be combined for the final multi-architecture binary.
-   */
-  public static final Key<Artifact> LINKED_BINARY =
-      new Key<>(STABLE_ORDER, "linked_binary", Artifact.class);
-
-  /** Combined-architecture binaries to include in the final bundle. */
-  public static final Key<Artifact> MULTI_ARCH_LINKED_BINARIES =
-      new Key<>(STABLE_ORDER, "combined_arch_linked_binary", Artifact.class);
-  /** Combined-architecture dynamic libraries to include in the final bundle. */
-  public static final Key<Artifact> MULTI_ARCH_DYNAMIC_LIBRARIES =
-      new Key<>(STABLE_ORDER, "combined_arch_dynamic_library", Artifact.class);
-  /** Combined-architecture archives to include in the final bundle. */
-  public static final Key<Artifact> MULTI_ARCH_LINKED_ARCHIVES =
-      new Key<>(STABLE_ORDER, "combined_arch_linked_archive", Artifact.class);
-
-  /**
    * Indicates which libraries to load with {@code -force_load}. This is a subset of the union of
    * the {@link #LIBRARY} and {@link #IMPORTED_LIBRARY} sets.
    */
@@ -183,15 +166,6 @@
   public static final Key<Artifact> MODULE_MAP =
       new Key<>(STABLE_ORDER, "module_map", Artifact.class);
 
-  /**
-   * Information about this provider's module map, in the form of a {@link CppModuleMap}. This
-   * is intransitive, and can be used to get just the target's module map to pass to clang or to
-   * get the module maps for direct but not transitive dependencies. You should only add module maps
-   * for this key using {@link Builder#addWithoutPropagating}.
-   */
-  public static final Key<CppModuleMap> TOP_LEVEL_MODULE_MAP =
-      new Key<>(STABLE_ORDER, "top_level_module_map", CppModuleMap.class);
-
   /** The static library files of user-specified static frameworks. */
   public static final Key<Artifact> STATIC_FRAMEWORK_FILE =
       new Key<>(STABLE_ORDER, "static_framework_file", Artifact.class);
@@ -200,18 +174,6 @@
   public static final Key<Artifact> DYNAMIC_FRAMEWORK_FILE =
       new Key<>(STABLE_ORDER, "dynamic_framework_file", Artifact.class);
 
-  /**
-   * Debug artifacts that should be exported by the top-level target.
-   */
-  public static final Key<Artifact> EXPORTED_DEBUG_ARTIFACTS =
-      new Key<>(STABLE_ORDER, "exported_debug_artifacts", Artifact.class);
-
-  /**
-   * Single-architecture link map for a binary.
-   */
-  public static final Key<Artifact> LINKMAP_FILE =
-      new Key<>(STABLE_ORDER, "linkmap_file", Artifact.class);
-
   /** Linking information from cc dependencies. */
   public static final Key<LibraryToLink> CC_LIBRARY =
       new Key<>(LINK_ORDER, "cc_library", LibraryToLink.class);
@@ -251,21 +213,6 @@
      * is invoked.
      */
     USES_CPP,
-
-    /** Indicates that Swift dependencies are present. This affects bundling actions. */
-    USES_SWIFT,
-
-    /**
-     * Indicates that a watchOS 1 extension is present in the bundle. (There can only be one
-     * extension for any given watchOS version in a given bundle).
-     */
-    HAS_WATCH1_EXTENSION,
-
-    /**
-     * Indicates that a watchOS 2 extension is present in the bundle. (There can only be one
-     * extension for any given watchOS version in a given bundle).
-     */
-    HAS_WATCH2_EXTENSION,
   }
 
   private final StarlarkSemantics semantics;
@@ -289,7 +236,6 @@
   static final ImmutableList<Key<?>> KEYS_FOR_STARLARK =
       ImmutableList.<Key<?>>of(
           DYNAMIC_FRAMEWORK_FILE,
-          EXPORTED_DEBUG_ARTIFACTS,
           FORCE_LOAD_LIBRARY,
           HEADER,
           IMPORTED_LIBRARY,
@@ -297,13 +243,8 @@
           JRE_LIBRARY,
           LIBRARY,
           LINK_INPUTS,
-          LINKED_BINARY,
-          LINKMAP_FILE,
           LINKOPT,
           MODULE_MAP,
-          MULTI_ARCH_DYNAMIC_LIBRARIES,
-          MULTI_ARCH_LINKED_ARCHIVES,
-          MULTI_ARCH_LINKED_BINARIES,
           SDK_DYLIB,
           SDK_FRAMEWORK,
           SOURCE,
@@ -344,11 +285,6 @@
   }
 
   @Override
-  public Depset /*<Artifact>*/ exportedDebugArtifacts() {
-    return Depset.of(Artifact.TYPE, get(EXPORTED_DEBUG_ARTIFACTS));
-  }
-
-  @Override
   public Depset /*<Artifact>*/ forceLoadLibrary() {
     return Depset.of(Artifact.TYPE, get(FORCE_LOAD_LIBRARY));
   }
@@ -395,16 +331,6 @@
   }
 
   @Override
-  public Depset /*<Artifact>*/ linkedBinary() {
-    return Depset.of(Artifact.TYPE, get(LINKED_BINARY));
-  }
-
-  @Override
-  public Depset /*<Artifact>*/ linkmapFile() {
-    return Depset.of(Artifact.TYPE, get(LINKMAP_FILE));
-  }
-
-  @Override
   public Depset /*<String>*/ linkopt() {
     return Depset.of(Depset.ElementType.STRING, get(LINKOPT));
   }
@@ -420,21 +346,6 @@
   }
 
   @Override
-  public Depset /*<Artifact>*/ multiArchDynamicLibraries() {
-    return Depset.of(Artifact.TYPE, get(MULTI_ARCH_DYNAMIC_LIBRARIES));
-  }
-
-  @Override
-  public Depset /*<Artifact>*/ multiArchLinkedArchives() {
-    return Depset.of(Artifact.TYPE, get(MULTI_ARCH_LINKED_ARCHIVES));
-  }
-
-  @Override
-  public Depset /*<Artifact>*/ multiArchLinkedBinaries() {
-    return Depset.of(Artifact.TYPE, get(MULTI_ARCH_LINKED_BINARIES));
-  }
-
-  @Override
   public Depset /*<String>*/ sdkDylib() {
     return Depset.of(Depset.ElementType.STRING, get(SDK_DYLIB));
   }
@@ -495,8 +406,6 @@
           FLAG,
           // Linkstamp is not exposed to Starlark. See commentary at its definition.
           LINKSTAMP,
-          // CppModuleMap is not exposed to Starlark.
-          TOP_LEVEL_MODULE_MAP,
           // Strict include is handled specially.
           STRICT_INCLUDE);
 
diff --git a/src/main/java/com/google/devtools/build/lib/starlarkbuildapi/apple/AppleCommonApi.java b/src/main/java/com/google/devtools/build/lib/starlarkbuildapi/apple/AppleCommonApi.java
index 2c81d0c..793346c 100644
--- a/src/main/java/com/google/devtools/build/lib/starlarkbuildapi/apple/AppleCommonApi.java
+++ b/src/main/java/com/google/devtools/build/lib/starlarkbuildapi/apple/AppleCommonApi.java
@@ -259,23 +259,13 @@
   @StarlarkMethod(
       name = "new_objc_provider",
       doc = "Creates a new ObjcProvider instance.",
-      parameters = {
-        @Param(
-            name = "uses_swift",
-            defaultValue = "False",
-            named = true,
-            positional = false,
-            doc = "Whether this provider should enable Swift support.")
-      },
+      parameters = {},
       extraKeywords =
-          @Param(
-              name = "kwargs",
-              defaultValue = "{}",
-              doc = "Dictionary of arguments."),
+          @Param(name = "kwargs", defaultValue = "{}", doc = "Dictionary of arguments."),
       useStarlarkThread = true)
   // This method is registered statically for Starlark, and never called directly.
-  ObjcProviderApi<?> newObjcProvider(
-      Boolean usesSwift, Dict<String, Object> kwargs, StarlarkThread thread) throws EvalException;
+  ObjcProviderApi<?> newObjcProvider(Dict<String, Object> kwargs, StarlarkThread thread)
+      throws EvalException;
 
   @StarlarkMethod(
       name = "new_dynamic_framework_provider",
diff --git a/src/main/java/com/google/devtools/build/lib/starlarkbuildapi/apple/ObjcProviderApi.java b/src/main/java/com/google/devtools/build/lib/starlarkbuildapi/apple/ObjcProviderApi.java
index 9634431..e9a3ef3 100644
--- a/src/main/java/com/google/devtools/build/lib/starlarkbuildapi/apple/ObjcProviderApi.java
+++ b/src/main/java/com/google/devtools/build/lib/starlarkbuildapi/apple/ObjcProviderApi.java
@@ -47,12 +47,6 @@
   Depset /*<FileApiT>*/ dynamicFrameworkFileForStarlark();
 
   @StarlarkMethod(
-      name = "exported_debug_artifacts",
-      structField = true,
-      doc = "Debug files that should be exported by the top-level target.")
-  Depset /*<FileApiT>*/ exportedDebugArtifacts();
-
-  @StarlarkMethod(
       name = "force_load_library",
       structField = true,
       doc = "Libraries to load with -force_load.")
@@ -108,20 +102,6 @@
               + " add the necessary linker flags to 'linkopt'.")
   Depset /*<FileApiT>*/ linkInputs();
 
-  @StarlarkMethod(
-      name = "linked_binary",
-      structField = true,
-      doc =
-          "Single-architecture linked binaries to be combined for the final multi-architecture "
-              + "binary.")
-  Depset /*<FileApiT>*/ linkedBinary();
-
-  @StarlarkMethod(
-      name = "linkmap_file",
-      structField = true,
-      doc = "Single-architecture link map for a binary.")
-  Depset /*<FileApiT>*/ linkmapFile();
-
   @StarlarkMethod(name = "linkopt", structField = true, doc = "Linking options.")
   Depset /*<String>*/ linkopt();
 
@@ -140,24 +120,6 @@
   Sequence<FileApiT> directModuleMaps();
 
   @StarlarkMethod(
-      name = "multi_arch_dynamic_libraries",
-      structField = true,
-      doc = "Combined-architecture dynamic libraries to include in the final bundle.")
-  Depset /*<FileApiT>*/ multiArchDynamicLibraries();
-
-  @StarlarkMethod(
-      name = "multi_arch_linked_archives",
-      structField = true,
-      doc = "Combined-architecture archives to include in the final bundle.")
-  Depset /*<FileApiT>*/ multiArchLinkedArchives();
-
-  @StarlarkMethod(
-      name = "multi_arch_linked_binaries",
-      structField = true,
-      doc = "Combined-architecture binaries to include in the final bundle.")
-  Depset /*<FileApiT>*/ multiArchLinkedBinaries();
-
-  @StarlarkMethod(
       name = "sdk_dylib",
       structField = true,
       doc = "Names of SDK .dylib libraries to link with. For instance, 'libz' or 'libarchive'.")
diff --git a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/apple/FakeAppleCommon.java b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/apple/FakeAppleCommon.java
index 3159312..130ba05 100644
--- a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/apple/FakeAppleCommon.java
+++ b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/apple/FakeAppleCommon.java
@@ -161,8 +161,7 @@
   }
 
   @Override
-  public ObjcProviderApi<?> newObjcProvider(
-      Boolean usesSwift, Dict<String, Object> kwargs, StarlarkThread thread) {
+  public ObjcProviderApi<?> newObjcProvider(Dict<String, Object> kwargs, StarlarkThread thread) {
     return new FakeObjcProvider();
   }
 
diff --git a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/apple/FakeObjcProvider.java b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/apple/FakeObjcProvider.java
index 32fe7e4..43ae167 100644
--- a/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/apple/FakeObjcProvider.java
+++ b/src/main/java/com/google/devtools/build/skydoc/fakebuildapi/apple/FakeObjcProvider.java
@@ -40,11 +40,6 @@
   }
 
   @Override
-  public Depset /*<FileApi>*/ exportedDebugArtifacts() {
-    return null;
-  }
-
-  @Override
   public Depset /*<FileApi>*/ forceLoadLibrary() {
     return null;
   }
@@ -85,16 +80,6 @@
   }
 
   @Override
-  public Depset /*<FileApi>*/ linkedBinary() {
-    return null;
-  }
-
-  @Override
-  public Depset /*<FileApi>*/ linkmapFile() {
-    return null;
-  }
-
-  @Override
   public Depset /*<String>*/ linkopt() {
     return null;
   }
@@ -110,21 +95,6 @@
   }
 
   @Override
-  public Depset /*<FileApi>*/ multiArchDynamicLibraries() {
-    return null;
-  }
-
-  @Override
-  public Depset /*<FileApi>*/ multiArchLinkedArchives() {
-    return null;
-  }
-
-  @Override
-  public Depset /*<FileApi>*/ multiArchLinkedBinaries() {
-    return null;
-  }
-
-  @Override
   public Depset /*<String>*/ sdkDylib() {
     return null;
   }
diff --git a/src/test/java/com/google/devtools/build/lib/rules/objc/AppleStaticLibraryTest.java b/src/test/java/com/google/devtools/build/lib/rules/objc/AppleStaticLibraryTest.java
index da4a7e5..ba99ac9 100644
--- a/src/test/java/com/google/devtools/build/lib/rules/objc/AppleStaticLibraryTest.java
+++ b/src/test/java/com/google/devtools/build/lib/rules/objc/AppleStaticLibraryTest.java
@@ -399,16 +399,13 @@
   public void testAppleStaticLibraryInfo() throws Exception {
     RULE_TYPE.scratchTarget(scratch, "platform_type", "'ios'");
     ConfiguredTarget binTarget = getConfiguredTarget("//x:x");
+    SymlinkAction lipoAction = (SymlinkAction) lipoLibAction("//x:x");
+
     AppleStaticLibraryInfo provider = binTarget.get(AppleStaticLibraryInfo.STARLARK_CONSTRUCTOR);
     assertThat(provider).isNotNull();
-    assertThat(provider.getMultiArchArchive()).isNotNull();
-    assertThat(provider.getDepsObjcProvider()).isNotNull();
     assertThat(provider.getMultiArchArchive())
-        .isEqualTo(
-            provider
-                .getDepsObjcProvider()
-                .get(ObjcProvider.MULTI_ARCH_LINKED_ARCHIVES)
-                .getSingleton());
+        .isEqualTo(Iterables.getOnlyElement(lipoAction.getOutputs()));
+    assertThat(provider.getDepsObjcProvider()).isNotNull();
   }
 
   @Test
@@ -604,17 +601,13 @@
         ")");
 
     ConfiguredTarget binTarget = getConfiguredTarget("//examples/apple_starlark:my_target");
+    SymlinkAction lipoAction = (SymlinkAction) lipoLibAction("//x:x");
 
     AppleStaticLibraryInfo provider = binTarget.get(AppleStaticLibraryInfo.STARLARK_CONSTRUCTOR);
     assertThat(provider).isNotNull();
-    assertThat(provider.getMultiArchArchive()).isNotNull();
-    assertThat(provider.getDepsObjcProvider()).isNotNull();
     assertThat(provider.getMultiArchArchive())
-        .isEqualTo(
-            provider
-                .getDepsObjcProvider()
-                .get(ObjcProvider.MULTI_ARCH_LINKED_ARCHIVES)
-                .getSingleton());
+        .isEqualTo(Iterables.getOnlyElement(lipoAction.getOutputs()));
+    assertThat(provider.getDepsObjcProvider()).isNotNull();
   }
 
   @Test
diff --git a/src/test/java/com/google/devtools/build/lib/rules/objc/ObjcStarlarkTest.java b/src/test/java/com/google/devtools/build/lib/rules/objc/ObjcStarlarkTest.java
index b3f1b3e..1884ea0 100644
--- a/src/test/java/com/google/devtools/build/lib/rules/objc/ObjcStarlarkTest.java
+++ b/src/test/java/com/google/devtools/build/lib/rules/objc/ObjcStarlarkTest.java
@@ -910,11 +910,8 @@
 
     Iterable<String> foundLinkopts =
         starlarkTarget.get(ObjcProvider.STARLARK_CONSTRUCTOR).get(ObjcProvider.LINKOPT).toList();
-    boolean usesSwift =
-        starlarkTarget.get(ObjcProvider.STARLARK_CONSTRUCTOR).is(ObjcProvider.Flag.USES_SWIFT);
 
     assertThat(foundLinkopts).containsExactly("somelinkopt");
-    assertThat(usesSwift).isFalse();
   }
 
   @Test
@@ -934,19 +931,6 @@
   }
 
   @Test
-  public void testStarlarkCanPassUsesSwiftFlag() throws Exception {
-    ConfiguredTarget starlarkTarget =
-        createObjcProviderStarlarkTarget(
-            "   created_provider = apple_common.new_objc_provider(uses_swift=True)",
-            "   return [created_provider]");
-
-    boolean usesSwift =
-        starlarkTarget.get(ObjcProvider.STARLARK_CONSTRUCTOR).is(ObjcProvider.Flag.USES_SWIFT);
-
-    assertThat(usesSwift).isTrue();
-  }
-
-  @Test
   public void testStarlarkCanCreateObjcProviderWithLinkopts() throws Exception {
     ConfiguredTarget starlarkTarget =
         createObjcProviderStarlarkTarget(