]> git.eshelyaron.com Git - emacs.git/commitdiff
Work around GCC bug 80776 on Fedora 27 x86
authorPaul Eggert <eggert@cs.ucla.edu>
Sun, 26 Nov 2017 00:11:43 +0000 (16:11 -0800)
committerPaul Eggert <eggert@cs.ucla.edu>
Sun, 26 Nov 2017 06:48:09 +0000 (22:48 -0800)
* src/buffer.c (Fgenerate_new_buffer_name): Pacify GCC 7.2.1
20170915 (Red Hat 7.2.1-2) on i686 with -Wformat-overflow -O2 by
using XINT rather than XFASTINT and by adding an eassume.  This
works around GCC bug 80776.

src/buffer.c

index d1c41380188a82985545ef7b949eae47503ded50..6e3412c3d05f82e36e5fd70320c10db9838e6856 100644 (file)
@@ -1087,7 +1087,11 @@ is first appended to NAME, to speed up finding a non-existent buffer.  */)
   else
     {
       char number[sizeof "-999999"];
-      int i = XFASTINT (Frandom (make_number (999999)));
+
+      /* Use XINT instead of XFASTINT to work around GCC bug 80776.  */
+      int i = XINT (Frandom (make_number (1000000)));
+      eassume (0 <= i && i < 1000000);
+
       AUTO_STRING_WITH_LEN (lnumber, number, sprintf (number, "-%d", i));
       genbase = concat2 (name, lnumber);
       if (NILP (Fget_buffer (genbase)))