Remove CcCompilationContext.TransitiveModuleHeaders#getTransitiveModules. This information is persisted for testing only, and considerably slows NestedSet serialization.

PiperOrigin-RevId: 200710549
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCompilationContext.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCompilationContext.java
index 29cfbcb..0dd346c 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCompilationContext.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCompilationContext.java
@@ -909,8 +909,7 @@
         ImmutableSet<Artifact> modularHeaders = ImmutableSet.copyOf(this.modularHeaders);
         NestedSet<Artifact> transitiveModules = this.transitiveModules.build();
         if (headerModule != null) {
-          transitiveModuleHeaders.add(
-              new TransitiveModuleHeaders(headerModule, modularHeaders, transitiveModules));
+          transitiveModuleHeaders.add(new TransitiveModuleHeaders(headerModule, modularHeaders));
         }
         return new ModuleInfo(
             headerModule,
@@ -936,27 +935,13 @@
      */
     private final ImmutableSet<Artifact> headers;
 
-    /**
-     * This nested set contains 'module' as well as all targets it transitively depends on.
-     * If any of the 'headers' is used, all of these modules a required for the compilation.
-     */
-    private final NestedSet<Artifact> transitiveModules;
-
-    public TransitiveModuleHeaders(
-        Artifact module,
-        ImmutableSet<Artifact> headers,
-        NestedSet<Artifact> transitiveModules) {
+    public TransitiveModuleHeaders(Artifact module, ImmutableSet<Artifact> headers) {
       this.module = module;
       this.headers = headers;
-      this.transitiveModules = transitiveModules;
     }
 
     public Artifact getModule() {
       return module;
     }
-
-    public Collection<Artifact> getTransitiveModules() {
-      return transitiveModules.toCollection();
-    }
   }
 }