code: @GwtIncompatible("Unnecessary")
    private void outputNameMaps() throws IOException {
  
      String propertyMapOutputPath = null;
      String variableMapOutputPath = null;
  
      // Check the create_name_map_files FLAG.
      if (config.createNameMapFiles) {
        String basePath = getMapPath(config.jsOutputFile);
  
        propertyMapOutputPath = basePath + "_props_map.out";
        variableMapOutputPath = basePath + "_vars_map.out";
      }
  
      // Check the individual FLAGS.
      if (!config.variableMapOutputFile.isEmpty()) {
        if (variableMapOutputPath != null) {
          throw new FlagUsageException("The flags variable_map_output_file and "
              + "create_name_map_files cannot both be used simultaneously.");
        }
  
        variableMapOutputPath = config.variableMapOutputFile;
      }
  
      if (!config.propertyMapOutputFile.isEmpty()) {
        if (propertyMapOutputPath != null) {
          throw new FlagUsageException("The flags property_map_output_file and "
              + "create_name_map_files cannot both be used simultaneously.");
        }
  
        propertyMapOutputPath = config.propertyMapOutputFile;
      }
  
      // Output the maps.
      if (variableMapOutputPath != null && compiler.getVariableMap() != null) {
        compiler.getVariableMap().save(variableMapOutputPath);
      }
  
      if (propertyMapOutputPath != null && compiler.getPropertyMap() != null) {
        compiler.getPropertyMap().save(propertyMapOutputPath);
      }
    }
docs: Outputs the variable and property name maps for the specified compiler if the proper FLAGS are
  set.