docs: private int createNewFilesList(File sourceFiles, List compilerFailureFileNames, JspOptions options) {
          String javaFileName;
          int compileCount = 0;
  
          if (compilerFailureFileNames != null && compilerFailureFileNames.size() > 0) {
              int firstFailLoc = translatedJspsFileNames.indexOf((String)compilerFailureFileNames.get(0));
              
              if (logger!=null){
                  logger.logp(Level.FINER,"JspModC","createNewFileList", "location of the first failing JSP: " + firstFailLoc);
              }
                  
              if (firstFailLoc == -1) {
                  return 0;
              }
                  
              PrintWriter pw = null;
              try {
                  //defect 204307
                  FileOutputStream fos = new FileOutputStream(sourceFiles);
                      
                  //begin 235442: zOS does not handle UTF-8 encoding: defer to OS for encoding.
                  //PrintWriter pw = new PrintWriter(new BufferedWriter(new OutputStreamWriter(fos, "UTF-8")));
                      
                  if (options.isZOS()){
                      if (logger!=null){
                          logger.logp(Level.FINER,"JspModC","createNewFilesList", "Platform is zOS; defer to zOS for encoding");
                      }
                      pw = new PrintWriter(new BufferedWriter(new OutputStreamWriter(fos)));
                  }
                  else{
                      // Assume characters are encoding in valid UTF-8 encoding. Defer handling of character encoding
                      // for the javac compiler to the underlying OS' current locale.
                      pw = new PrintWriter(new BufferedWriter(new OutputStreamWriter(fos, "UTF-8")));
                  }
                  // end 235442: zOS does not handle UTF-8 encoding: defer to OS for encoding.
                  
                  for(int i = (firstFailLoc+1); i < translatedJspsFileNames.size(); i++) {
                      if (compilerFailureFileNames.indexOf((String)translatedJspsFileNames.get(i)) == -1) {
                          if (logger!=null){
                              logger.logp(Level.FINER,"JspModC","createNewFilesList", "Adding the following file to the compile list: " + (String)translatedJspsFileNames.get(i));
                          }
                          pw.println((String)translatedJspsFileNames.get(i));
                          compileCount++;
                      }
                  }
  
              } catch (IOException ioe) {
                  if (logger!=null){
                      logger.logp(Level.FINER,"JspModC","createNewFileList", "Exception occurred while writing to a temporary file: " + ioe);
                  }
                  compileCount = 0;
              }
              finally {
                  if (pw != null)
                      pw.close();
              }
          }
          return compileCount;
      }