This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[Patch, fortran, committed] PR 62215 Unlink old module file before renaming
- From: Janne Blomqvist <blomqvist dot janne at gmail dot com>
- To: Fortran List <fortran at gcc dot gnu dot org>, GCC Patches <gcc-patches at gcc dot gnu dot org>
- Date: Fri, 29 Aug 2014 23:52:02 +0300
- Subject: [Patch, fortran, committed] PR 62215 Unlink old module file before renaming
- Authentication-results: sourceware.org; auth=none
Hi,
per the discussion in the PR, committed the attached patch to trunk
and 4.9, which fixes a regression I introduced when implementing the
zlib compressed module files stuff:
Index: ChangeLog
===================================================================
--- ChangeLog (revision 214738)
+++ ChangeLog (working copy)
@@ -1,3 +1,9 @@
+2014-08-29 Jeffrey Armstrong <jeffrey.armstrong@approximatrix.com>
+
+ PR fortran/62215
+ * module.c (gfc_dump_module): Unlink old module file before
+ renaming new one.
+
2014-08-26 Thomas Koenig <tkoenig@gcc.gnu.org>
* frontend_passes (expr_array): Replace by vec template.
Index: module.c
===================================================================
--- module.c (revision 214738)
+++ module.c (working copy)
@@ -6040,6 +6040,9 @@ gfc_dump_module (const char *name, int d
|| crc_old != crc)
{
/* Module file have changed, replace the old one. */
+ if (unlink (filename) && errno != ENOENT)
+ gfc_fatal_error ("Can't delete module file '%s': %s", filename,
+ xstrerror (errno));
if (rename (filename_tmp, filename))
gfc_fatal_error ("Can't rename module file '%s' to '%s': %s",
filename_tmp, filename, xstrerror (errno));
--
Janne Blomqvist