Don't write to inferior_ptid in go32-nat.c
[deliverable/binutils-gdb.git] / gas / output-file.c
index 9603dc4f38a0ccc30987b2e32a26a3fc8dc72597..573598101c33ffe9adebf30b21b1e27e8424ad68 100644 (file)
@@ -1,12 +1,11 @@
 /* output-file.c -  Deal with the output file
 /* output-file.c -  Deal with the output file
-   Copyright 1987, 1990, 1991, 1992, 1993, 1994, 1996, 1998, 1999, 2001,
-   2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+   Copyright (C) 1987-2020 Free Software Foundation, Inc.
 
    This file is part of GAS, the GNU Assembler.
 
    GAS is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
 
    This file is part of GAS, the GNU Assembler.
 
    GAS is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 2, or (at your option)
+   the Free Software Foundation; either version 3, or (at your option)
    any later version.
 
    GAS is distributed in the hope that it will be useful,
    any later version.
 
    GAS is distributed in the hope that it will be useful,
@@ -29,7 +28,7 @@
 bfd *stdoutput;
 
 void
 bfd *stdoutput;
 
 void
-output_file_create (char *name)
+output_file_create (const char *name)
 {
   if (name[0] == '-' && name[1] == '\0')
     as_fatal (_("can't open a bfd on stdout %s"), name);
 {
   if (name[0] == '-' && name[1] == '\0')
     as_fatal (_("can't open a bfd on stdout %s"), name);
@@ -51,15 +50,18 @@ output_file_create (char *name)
 }
 
 void
 }
 
 void
-output_file_close (char *filename)
+output_file_close (const char *filename)
 {
   bfd_boolean res;
 
   if (stdoutput == NULL)
     return;
 {
   bfd_boolean res;
 
   if (stdoutput == NULL)
     return;
-    
+
   /* Close the bfd.  */
   /* Close the bfd.  */
-  res = bfd_close (stdoutput);
+  if (!flag_always_generate_output && had_errors ())
+    res = bfd_cache_close_all ();
+  else
+    res = bfd_close (stdoutput);
 
   /* Prevent an infinite loop - if the close failed we will call as_fatal
      which will call xexit() which may call this function again...  */
 
   /* Prevent an infinite loop - if the close failed we will call as_fatal
      which will call xexit() which may call this function again...  */
This page took 0.02369 seconds and 4 git commands to generate.