parameters: (plat=None,
                    compiler=None,
                    verbose=0,
                    dry_run=0,
                    force=0,
                    requiref90=False,
                    c_compiler = None)
return_statement: return compiler
docstring: Generate an instance of some FCompiler subclass for the supplied
      platform/compiler combination.
docstring_summary: Generate an instance of some FCompiler subclass for the supplied
      platform/compiler combination.
docstring_tokens: Generate an instance of some FCompiler subclass for the supplied platform / compiler combination .
function: def new_fcompiler(plat=None,
                    compiler=None,
                    verbose=0,
                    dry_run=0,
                    force=0,
                    requiref90=False,
                    c_compiler = None):
      """Generate an instance of some FCompiler subclass for the supplied
      platform/compiler combination.
      """
      global failed_fcompilers
      fcompiler_key = (plat, compiler)
      if fcompiler_key in failed_fcompilers:
          return None
  
      load_all_fcompiler_classes()
      if plat is None:
          plat = os.name
      if compiler is None:
          compiler = get_default_fcompiler(plat, requiref90=requiref90,
                                           c_compiler=c_compiler)
      if compiler in fcompiler_class:
          module_name, klass, long_description = fcompiler_class[compiler]
      elif compiler in fcompiler_aliases:
          module_name, klass, long_description = fcompiler_aliases[compiler]
      else:
          msg = "don't know how to compile Fortran code on platform '%s'" % plat
          if compiler is not None:
              msg = msg + " with '%s' compiler." % compiler
              msg = msg + " Supported compilers are: %s)" \
                    % (','.join(fcompiler_class.keys()))
          log.warn(msg)
          failed_fcompilers.add(fcompiler_key)
          return None
  
      compiler = klass(verbose=verbose, dry_run=dry_run, force=force)
      compiler.c_compiler = c_compiler
      return compiler
function_tokens: def new_fcompiler ( plat = None , compiler = None , verbose = 0 , dry_run = 0 , force = 0 , requiref90 = False , c_compiler = None ) : global failed_fcompilers fcompiler_key = ( plat , compiler ) if fcompiler_key in failed_fcompilers : return None load_all_fcompiler_classes ( ) if plat is None : plat = os . name if compiler is None : compiler = get_default_fcompiler ( plat , requiref90 = requiref90 , c_compiler = c_compiler ) if compiler in fcompiler_class : module_name , klass , long_description = fcompiler_class [ compiler ] elif compiler in fcompiler_aliases : module_name , klass , long_description = fcompiler_aliases [ compiler ] else : msg = "don't know how to compile Fortran code on platform '%s'" % plat if compiler is not None : msg = msg + " with '%s' compiler." % compiler msg = msg + " Supported compilers are: %s)" % ( ',' . join ( fcompiler_class . keys ( ) ) ) log . warn ( msg ) failed_fcompilers . add ( fcompiler_key ) return None compiler = klass ( verbose = verbose , dry_run = dry_run , force = force ) compiler . c_compiler = c_compiler return compiler