unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Emacs 27.0.90 is out!
@ 2020-03-03 12:09 Nicolas Petton
  2020-03-03 13:40 ` N. Jackson
                   ` (3 more replies)
  0 siblings, 4 replies; 13+ messages in thread
From: Nicolas Petton @ 2020-03-03 12:09 UTC (permalink / raw)
  To: Emacs Devel

[-- Attachment #1: Type: text/plain, Size: 664 bytes --]

Hi!

The first pretest for what will be the 27.1 release of Emacs (the
extensible text editor) is available at

  https://alpha.gnu.org/gnu/emacs/pretest/emacs-27.0.90.tar.xz

You can get the PGP signature at

  https://alpha.gnu.org/gnu/emacs/pretest/emacs-27.0.90.tar.xz.sig

The tarball is signed with the following GPG key, which can be found on
PGP key servers

  D405AA2C862C54F17EEE6BE0E8BCD7866AFCF978

Please give it as much testing as you can.

As always, if you encounter problems building or using Emacs,
send a report to bug-gnu-emacs@gnu.org with full details
(if possible, use M-x report-emacs-bug).

Thanks for helping to test Emacs.

Cheers,
Nico

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 487 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Emacs 27.0.90 is out!
  2020-03-03 12:09 Emacs 27.0.90 is out! Nicolas Petton
@ 2020-03-03 13:40 ` N. Jackson
  2020-03-03 16:09   ` Eli Zaretskii
  2020-03-04 21:51   ` Paul Eggert
  2020-03-04  3:21 ` Richard Stallman
                   ` (2 subsequent siblings)
  3 siblings, 2 replies; 13+ messages in thread
From: N. Jackson @ 2020-03-03 13:40 UTC (permalink / raw)
  To: Nicolas Petton; +Cc: Emacs Devel

At 13:09 +0100 on Tuesday 2020-03-03, Nicolas Petton wrote:
>
> The first pretest for what will be the 27.1 release of Emacs
> (the extensible text editor) is available at
>
>   https://alpha.gnu.org/gnu/emacs/pretest/emacs-27.0.90.tar.xz

> Please give it as much testing as you can.

It's very nice to build an Emacs with so few warnings!  Are the
-Walloc-size-larger-than= warnings expected?

The warnings look like this:

  In function ‘xnrealloc’,
      inlined from ‘linebuffer_setlen’ at etags.c:7284:7,
      inlined from ‘find_entries’ at etags.c:1893:3:
  etags.c:7324:18: warning: argument 2 range [9223372036854775808, 18446744073709551615] exceeds maximum object size 9223372036854775807 [-Walloc-size-larger-than=]
   7324 |   void *result = realloc (pa, nbytes);
        |                  ^~~~~~~~~~~~~~~~~~~~
  In file included from ../lib/stdlib.h:37,
                   from etags.c:119:
  etags.c: In function ‘find_entries’:
  /usr/include/stdlib.h:549:14: note: in a call to allocation function ‘realloc’ declared here
    549 | extern void *realloc (void *__ptr, size_t __size)
        |              ^~~~~~~
  In file included from ctags.c:2:

Thanks!

N.




^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Emacs 27.0.90 is out!
  2020-03-03 13:40 ` N. Jackson
@ 2020-03-03 16:09   ` Eli Zaretskii
  2020-03-03 16:30     ` N. Jackson
  2020-03-04 21:51   ` Paul Eggert
  1 sibling, 1 reply; 13+ messages in thread
From: Eli Zaretskii @ 2020-03-03 16:09 UTC (permalink / raw)
  To: N. Jackson; +Cc: emacs-devel, nico

> From: nljlistbox2@gmail.com (N. Jackson)
> Date: Tue, 03 Mar 2020 08:40:58 -0500
> Cc: Emacs Devel <emacs-devel@gnu.org>
> 
> Are the -Walloc-size-larger-than= warnings expected?
> 
> The warnings look like this:
> 
>   In function ‘xnrealloc’,
>       inlined from ‘linebuffer_setlen’ at etags.c:7284:7,
>       inlined from ‘find_entries’ at etags.c:1893:3:
>   etags.c:7324:18: warning: argument 2 range [9223372036854775808, 18446744073709551615] exceeds maximum object size 9223372036854775807 [-Walloc-size-larger-than=]
>    7324 |   void *result = realloc (pa, nbytes);
>         |                  ^~~~~~~~~~~~~~~~~~~~
>   In file included from ../lib/stdlib.h:37,
>                    from etags.c:119:
>   etags.c: In function ‘find_entries’:
>   /usr/include/stdlib.h:549:14: note: in a call to allocation function ‘realloc’ declared here
>     549 | extern void *realloc (void *__ptr, size_t __size)
>         |              ^~~~~~~
>   In file included from ctags.c:2:

What version of GCC did you use for this build?  I had a similar
warning in editfns.c, see bug#39857.




^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Emacs 27.0.90 is out!
  2020-03-03 16:09   ` Eli Zaretskii
@ 2020-03-03 16:30     ` N. Jackson
  0 siblings, 0 replies; 13+ messages in thread
From: N. Jackson @ 2020-03-03 16:30 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: emacs-devel, nico

At 18:09 +0200 on Tuesday 2020-03-03, Eli Zaretskii wrote:
>
> What version of GCC did you use for this build?  I had a similar
> warning in editfns.c, see bug#39857.

It's gcc (GCC) 9.2.1 20190827 (Red Hat 9.2.1-1) with CFLAGS="-O3
-g3 -gdwarf-4".




^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Emacs 27.0.90 is out!
  2020-03-03 12:09 Emacs 27.0.90 is out! Nicolas Petton
  2020-03-03 13:40 ` N. Jackson
@ 2020-03-04  3:21 ` Richard Stallman
  2020-03-04  3:40   ` Eli Zaretskii
  2020-03-05  8:12 ` Philippe Vaucher
  2020-03-05 13:52 ` Pieter van Oostrum
  3 siblings, 1 reply; 13+ messages in thread
From: Richard Stallman @ 2020-03-04  3:21 UTC (permalink / raw)
  To: Nicolas Petton; +Cc: emacs-devel

[[[ To any NSA and FBI agents reading my email: please consider    ]]]
[[[ whether defending the US Constitution against all enemies,     ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]

Is the new battery.el problem in version 27?

-- 
Dr Richard Stallman
Chief GNUisance of the GNU Project (https://gnu.org)
Founder, Free Software Foundation (https://fsf.org)
Internet Hall-of-Famer (https://internethalloffame.org)





^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Emacs 27.0.90 is out!
  2020-03-04  3:21 ` Richard Stallman
@ 2020-03-04  3:40   ` Eli Zaretskii
  0 siblings, 0 replies; 13+ messages in thread
From: Eli Zaretskii @ 2020-03-04  3:40 UTC (permalink / raw)
  To: rms; +Cc: emacs-devel, nico

> From: Richard Stallman <rms@gnu.org>
> Date: Tue, 03 Mar 2020 22:21:36 -0500
> Cc: emacs-devel@gnu.org
> 
> Is the new battery.el problem in version 27?

No, those changes are only installed on the master branch, not on the
emacs-27 branch.



^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Emacs 27.0.90 is out!
  2020-03-03 13:40 ` N. Jackson
  2020-03-03 16:09   ` Eli Zaretskii
@ 2020-03-04 21:51   ` Paul Eggert
  2020-03-05  6:40     ` Eli Zaretskii
  1 sibling, 1 reply; 13+ messages in thread
From: Paul Eggert @ 2020-03-04 21:51 UTC (permalink / raw)
  To: N. Jackson, Nicolas Petton; +Cc: Emacs Devel

[-- Attachment #1: Type: text/plain, Size: 442 bytes --]

On 3/3/20 5:40 AM, N. Jackson wrote:
> It's very nice to build an Emacs with so few warnings!  Are the
> -Walloc-size-larger-than= warnings expected?

Not really. I reproduced the problem in master (along with some other 
warnings) and installed the attached patch to master to fix them. I 
doubt whether this is worth backporting to Emacs 27. If you compile with 
-O2 rather than -O3 the false alarms (and one true alarm :-) should go away.

[-- Attachment #2: 0001-Pacify-GCC-9.2.1-20190927-O3.patch --]
[-- Type: text/x-patch, Size: 10711 bytes --]

From c9b58a8c5b6be347c84d847c45d4178e61e298e6 Mon Sep 17 00:00:00 2001
From: Paul Eggert <eggert@cs.ucla.edu>
Date: Wed, 4 Mar 2020 13:48:26 -0800
Subject: [PATCH] Pacify GCC 9.2.1 20190927 -O3
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

Original problem report by N. Jackson in:
https://lists.gnu.org/r/emacs-devel/2020-03/msg00047.html
I found some other warnings when I used gcc, and fixed them
with this patch.
* lib-src/etags.c: Include verify.h.
(xnmalloc, xnrealloc): Tell the compiler that NITEMS is
nononnegative and ITEM_SIZE is positive.
* src/conf_post.h (__has_attribute_returns_nonnull)
(ATTRIBUTE_RETURNS_NONNULL): New macros.
* src/editfns.c (Fuser_full_name): Don’t assume Fuser_login_name
returns non-nil.
* src/intervals.c (rotate_right, rotate_left, update_interval):
* src/intervals.h (LENGTH, LEFT_TOTAL_LENGTH, RIGHT_TOTAL_LENGTH):
Use TOTAL_LENGTH0 or equivalent on intervals that might be null.
* src/intervals.h (TOTAL_LENGTH): Assume arg is nonnull.
(TOTAL_LENGTH0): New macro, with the old TOTAL_LENGTH meaning.
(make_interval, split_interval_right): Add ATTRIBUTE_RETURNS_NONNULL.
* src/pdumper.c (dump_check_dump_off): Now returns void, since
no caller uses the return value.  Redo assert to pacify GCC.
(decode_emacs_reloc): Add a seemingly-random eassume to pacify GCC.
Ugly, and I suspect due to a bug in GCC.
---
 lib-src/etags.c |  5 +++++
 src/conf_post.h |  7 +++++++
 src/editfns.c   | 19 +++++++++++--------
 src/intervals.c | 12 ++++++------
 src/intervals.h | 24 ++++++++++++++----------
 src/pdumper.c   |  9 ++++-----
 6 files changed, 47 insertions(+), 29 deletions(-)

diff --git a/lib-src/etags.c b/lib-src/etags.c
index 174c33a7a5..eee2c59626 100644
--- a/lib-src/etags.c
+++ b/lib-src/etags.c
@@ -124,6 +124,7 @@ Copyright (C) 1984, 1987-1989, 1993-1995, 1998-2020 Free Software
 #include <binary-io.h>
 #include <intprops.h>
 #include <unlocked-io.h>
+#include <verify.h>
 #include <c-ctype.h>
 #include <c-strcase.h>
 
@@ -7310,6 +7311,8 @@ xmalloc (ptrdiff_t size)
 xnmalloc (ptrdiff_t nitems, ptrdiff_t item_size)
 {
   ptrdiff_t nbytes;
+  assume (0 <= nitems);
+  assume (0 < item_size);
   if (INT_MULTIPLY_WRAPV (nitems, item_size, &nbytes))
     memory_full ();
   return xmalloc (nbytes);
@@ -7319,6 +7322,8 @@ xnmalloc (ptrdiff_t nitems, ptrdiff_t item_size)
 xnrealloc (void *pa, ptrdiff_t nitems, ptrdiff_t item_size)
 {
   ptrdiff_t nbytes;
+  assume (0 <= nitems);
+  assume (0 < item_size);
   if (INT_MULTIPLY_WRAPV (nitems, item_size, &nbytes) || SIZE_MAX < nbytes)
     memory_full ();
   void *result = realloc (pa, nbytes);
diff --git a/src/conf_post.h b/src/conf_post.h
index 2f8d19fdca..eb8fb18c00 100644
--- a/src/conf_post.h
+++ b/src/conf_post.h
@@ -78,6 +78,7 @@ Copyright (C) 1988, 1993-1994, 1999-2002, 2004-2020 Free Software
 # define __has_attribute_no_address_safety_analysis false
 # define __has_attribute_no_sanitize_address GNUC_PREREQ (4, 8, 0)
 # define __has_attribute_no_sanitize_undefined GNUC_PREREQ (4, 9, 0)
+# define __has_attribute_returns_nonnull GNUC_PREREQ (4, 9, 0)
 # define __has_attribute_warn_unused_result GNUC_PREREQ (3, 4, 0)
 #endif
 
@@ -321,6 +322,12 @@ #define ATTRIBUTE_SECTION(name)
 
 #define ATTRIBUTE_MALLOC_SIZE(args) ATTRIBUTE_MALLOC ATTRIBUTE_ALLOC_SIZE (args)
 
+#if __has_attribute (returns_nonnull)
+# define ATTRIBUTE_RETURNS_NONNULL __attribute__ ((returns_nonnull))
+#else
+# define ATTRIBUTE_RETURNS_NONNULL
+#endif
+
 /* Work around GCC bug 59600: when a function is inlined, the inlined
    code may have its addresses sanitized even if the function has the
    no_sanitize_address attribute.  This bug is fixed in GCC 4.9.0 and
diff --git a/src/editfns.c b/src/editfns.c
index ddf190b175..eb15566fb4 100644
--- a/src/editfns.c
+++ b/src/editfns.c
@@ -1262,14 +1262,17 @@ DEFUN ("user-full-name", Fuser_full_name, Suser_full_name, 0, 1, 0,
   if (q)
     {
       Lisp_Object login = Fuser_login_name (INT_TO_INTEGER (pw->pw_uid));
-      USE_SAFE_ALLOCA;
-      char *r = SAFE_ALLOCA (strlen (p) + SBYTES (login) + 1);
-      memcpy (r, p, q - p);
-      char *s = lispstpcpy (&r[q - p], login);
-      r[q - p] = upcase ((unsigned char) r[q - p]);
-      strcpy (s, q + 1);
-      full = build_string (r);
-      SAFE_FREE ();
+      if (!NILP (login))
+	{
+	  USE_SAFE_ALLOCA;
+	  char *r = SAFE_ALLOCA (strlen (p) + SBYTES (login) + 1);
+	  memcpy (r, p, q - p);
+	  char *s = lispstpcpy (&r[q - p], login);
+	  r[q - p] = upcase ((unsigned char) r[q - p]);
+	  strcpy (s, q + 1);
+	  full = build_string (r);
+	  SAFE_FREE ();
+	}
     }
 #endif /* AMPERSAND_FULL_NAME */
 
diff --git a/src/intervals.c b/src/intervals.c
index a66594ceea..594d8924eb 100644
--- a/src/intervals.c
+++ b/src/intervals.c
@@ -298,7 +298,7 @@ rotate_right (INTERVAL A)
     set_interval_parent (c, A);
 
   /* A's total length is decreased by the length of B and its left child.  */
-  A->total_length -= B->total_length - TOTAL_LENGTH (c);
+  A->total_length -= TOTAL_LENGTH (B) - TOTAL_LENGTH0 (c);
   eassert (TOTAL_LENGTH (A) > 0);
   eassert (LENGTH (A) > 0);
 
@@ -349,7 +349,7 @@ rotate_left (INTERVAL A)
     set_interval_parent (c, A);
 
   /* A's total length is decreased by the length of B and its right child.  */
-  A->total_length -= B->total_length - TOTAL_LENGTH (c);
+  A->total_length -= TOTAL_LENGTH (B) - TOTAL_LENGTH0 (c);
   eassert (TOTAL_LENGTH (A) > 0);
   eassert (LENGTH (A) > 0);
 
@@ -723,13 +723,13 @@ #define SET_PARENT_POSITION(i)                                  \
       i->position - LEFT_TOTAL_LENGTH (i)                       \
       - LENGTH (INTERVAL_PARENT (i))
 
-/* Find the interval containing POS, given some non-NULL INTERVAL in
+/* Find the interval containing POS, given some interval I in
    the same tree.  Note that we update interval->position in each
    interval we traverse, assuming it is already correctly set for the
    argument I.  We don't assume that any other interval already has a
    correctly set ->position.  */
 INTERVAL
-update_interval (register INTERVAL i, ptrdiff_t pos)
+update_interval (INTERVAL i, ptrdiff_t pos)
 {
   if (!i)
     return NULL;
@@ -739,7 +739,7 @@ update_interval (register INTERVAL i, ptrdiff_t pos)
       if (pos < i->position)
 	{
 	  /* Move left.  */
-	  if (pos >= i->position - TOTAL_LENGTH (i->left))
+	  if (pos >= i->position - LEFT_TOTAL_LENGTH (i))
 	    {
 	      i->left->position = i->position - TOTAL_LENGTH (i->left)
 		+ LEFT_TOTAL_LENGTH (i->left);
@@ -757,7 +757,7 @@ update_interval (register INTERVAL i, ptrdiff_t pos)
       else if (pos >= INTERVAL_LAST_POS (i))
 	{
 	  /* Move right.  */
-	  if (pos < INTERVAL_LAST_POS (i) + TOTAL_LENGTH (i->right))
+	  if (pos < INTERVAL_LAST_POS (i) + RIGHT_TOTAL_LENGTH (i))
 	    {
 	      i->right->position = INTERVAL_LAST_POS (i)
 	        + LEFT_TOTAL_LENGTH (i->right);
diff --git a/src/intervals.h b/src/intervals.h
index a93b10e9ff..9a7ba910a1 100644
--- a/src/intervals.h
+++ b/src/intervals.h
@@ -96,24 +96,27 @@ #define ONLY_INTERVAL_P(i) (ROOT_INTERVAL_P (i) && LEAF_INTERVAL_P (i))
 /* True if this interval has both left and right children.  */
 #define BOTH_KIDS_P(i) ((i)->left != NULL && (i)->right != NULL)
 
-/* The total size of all text represented by this interval and all its
-   children in the tree.   This is zero if the interval is null.  */
-#define TOTAL_LENGTH(i) ((i) == NULL ? 0 : (i)->total_length)
+/* The total size of all text represented by the nonnull interval I
+   and all its children in the tree.  */
+#define TOTAL_LENGTH(i) ((i)->total_length)
+
+/* Likewise, but also defined to be zero if I is null.  */
+#define TOTAL_LENGTH0(i) ((i) ? TOTAL_LENGTH (i) : 0)
 
 /* The size of text represented by this interval alone.  */
-#define LENGTH(i) ((i)->total_length			\
-		   - TOTAL_LENGTH ((i)->right)		\
-		   - TOTAL_LENGTH ((i)->left))
+#define LENGTH(i) (TOTAL_LENGTH (i)		\
+		   - RIGHT_TOTAL_LENGTH (i)	\
+		   - LEFT_TOTAL_LENGTH (i))
 
 /* The position of the character just past the end of I.  Note that
    the position cache i->position must be valid for this to work.  */
 #define INTERVAL_LAST_POS(i) ((i)->position + LENGTH (i))
 
 /* The total size of the left subtree of this interval.  */
-#define LEFT_TOTAL_LENGTH(i) ((i)->left ? (i)->left->total_length : 0)
+#define LEFT_TOTAL_LENGTH(i) TOTAL_LENGTH0 ((i)->left)
 
 /* The total size of the right subtree of this interval.  */
-#define RIGHT_TOTAL_LENGTH(i) ((i)->right ? (i)->right->total_length : 0)
+#define RIGHT_TOTAL_LENGTH(i) TOTAL_LENGTH0 ((i)->right)
 
 /* These macros are for dealing with the interval properties.  */
 
@@ -234,7 +237,7 @@ #define TEXT_PROP_MEANS_INVISIBLE(prop)					\
 
 /* Declared in alloc.c.  */
 
-extern INTERVAL make_interval (void);
+extern INTERVAL make_interval (void) ATTRIBUTE_RETURNS_NONNULL;
 
 /* Declared in intervals.c.  */
 
@@ -246,7 +249,8 @@ #define TEXT_PROP_MEANS_INVISIBLE(prop)					\
                                 Lisp_Object);
 extern void traverse_intervals_noorder (INTERVAL,
 					void (*) (INTERVAL, void *), void *);
-extern INTERVAL split_interval_right (INTERVAL, ptrdiff_t);
+extern INTERVAL split_interval_right (INTERVAL, ptrdiff_t)
+  ATTRIBUTE_RETURNS_NONNULL;
 extern INTERVAL split_interval_left (INTERVAL, ptrdiff_t);
 extern INTERVAL find_interval (INTERVAL, ptrdiff_t);
 extern INTERVAL next_interval (INTERVAL);
diff --git a/src/pdumper.c b/src/pdumper.c
index 4d81203f46..e52163cdae 100644
--- a/src/pdumper.c
+++ b/src/pdumper.c
@@ -3604,14 +3604,12 @@ dump_unwind_cleanup (void *data)
   Vprocess_environment = ctx->old_process_environment;
 }
 
-/* Return DUMP_OFFSET, making sure it is within the heap.  */
-static dump_off
+/* Check that DUMP_OFFSET is within the heap.  */
+static void
 dump_check_dump_off (struct dump_context *ctx, dump_off dump_offset)
 {
   eassert (dump_offset > 0);
-  if (ctx)
-    eassert (dump_offset < ctx->end_heap);
-  return dump_offset;
+  eassert (!ctx || dump_offset < ctx->end_heap);
 }
 
 static void
@@ -3734,6 +3732,7 @@ decode_emacs_reloc (struct dump_context *ctx, Lisp_Object lreloc)
           }
         else
           {
+	    eassume (ctx); /* Pacify GCC 9.2.1 -O3 -Wnull-dereference.  */
             eassert (!dump_object_emacs_ptr (target_value));
             reloc.u.dump_offset = dump_recall_object (ctx, target_value);
             if (reloc.u.dump_offset <= 0)
-- 
2.24.1


^ permalink raw reply related	[flat|nested] 13+ messages in thread

* Re: Emacs 27.0.90 is out!
  2020-03-04 21:51   ` Paul Eggert
@ 2020-03-05  6:40     ` Eli Zaretskii
  2020-03-06  2:18       ` Paul Eggert
  0 siblings, 1 reply; 13+ messages in thread
From: Eli Zaretskii @ 2020-03-05  6:40 UTC (permalink / raw)
  To: Paul Eggert; +Cc: nljlistbox2, emacs-devel, nico

> From: Paul Eggert <eggert@cs.ucla.edu>
> Date: Wed, 4 Mar 2020 13:51:03 -0800
> Cc: Emacs Devel <emacs-devel@gnu.org>
> 
> On 3/3/20 5:40 AM, N. Jackson wrote:
> > It's very nice to build an Emacs with so few warnings!  Are the
> > -Walloc-size-larger-than= warnings expected?
> 
> Not really. I reproduced the problem in master (along with some other 
> warnings) and installed the attached patch to master to fix them. I 
> doubt whether this is worth backporting to Emacs 27. If you compile with 
> -O2 rather than -O3 the false alarms (and one true alarm :-) should go away.

Thanks.

I'm not yet sure which part(s) of the changeset directly shut up the
"-Walloc-size-larger-than=N" warnings.  Is that the part that adds the
calls to 'assume'?  If so, we already call eassume in many places; it
won't be a problem to add a few more, and fix the warnings on the
emacs-27 branch.

And what about a similar warning I reported in bug#39857?



^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Emacs 27.0.90 is out!
  2020-03-03 12:09 Emacs 27.0.90 is out! Nicolas Petton
  2020-03-03 13:40 ` N. Jackson
  2020-03-04  3:21 ` Richard Stallman
@ 2020-03-05  8:12 ` Philippe Vaucher
  2020-03-05 13:52 ` Pieter van Oostrum
  3 siblings, 0 replies; 13+ messages in thread
From: Philippe Vaucher @ 2020-03-05  8:12 UTC (permalink / raw)
  To: Nicolas Petton; +Cc: Emacs Devel

[-- Attachment #1: Type: text/plain, Size: 447 bytes --]

Hello,


> Please give it as much testing as you can.
>
> As always, if you encounter problems building or using Emacs,
> send a report to bug-gnu-emacs@gnu.org with full details
> (if possible, use M-x report-emacs-bug).


Just wanted to make sure everyone here knows this snapshot has this bug
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=39911

Also there's a 27.0.90 docker image at silex/emacs:27-dev for your tests.

Kind regards,
Philippe

[-- Attachment #2: Type: text/html, Size: 881 bytes --]

^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Emacs 27.0.90 is out!
  2020-03-03 12:09 Emacs 27.0.90 is out! Nicolas Petton
                   ` (2 preceding siblings ...)
  2020-03-05  8:12 ` Philippe Vaucher
@ 2020-03-05 13:52 ` Pieter van Oostrum
  2020-03-05 14:19   ` Noam Postavsky
  3 siblings, 1 reply; 13+ messages in thread
From: Pieter van Oostrum @ 2020-03-05 13:52 UTC (permalink / raw)
  To: emacs-devel

Nicolas Petton <nico@petton.fr> writes:

> Hi!
>
> The first pretest for what will be the 27.1 release of Emacs (the
> extensible text editor) is available at
>
>   https://alpha.gnu.org/gnu/emacs/pretest/emacs-27.0.90.tar.xz

I prefer to compile emacs from Git. I think this pretest is commit d424195905, is that right?
There seems to be no tag for this version.
-- 
Pieter van Oostrum
www: http://pieter.vanoostrum.org/
PGP key: [8DAE142BE17999C4]



^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Emacs 27.0.90 is out!
  2020-03-05 13:52 ` Pieter van Oostrum
@ 2020-03-05 14:19   ` Noam Postavsky
  2020-03-06 15:25     ` Pieter van Oostrum
  0 siblings, 1 reply; 13+ messages in thread
From: Noam Postavsky @ 2020-03-05 14:19 UTC (permalink / raw)
  To: Pieter van Oostrum; +Cc: Emacs developers

On Thu, 5 Mar 2020 at 09:02, Pieter van Oostrum <pieter-l@vanoostrum.org> wrote:

> >   https://alpha.gnu.org/gnu/emacs/pretest/emacs-27.0.90.tar.xz
>
> I prefer to compile emacs from Git. I think this pretest is commit d424195905, is that right?
> There seems to be no tag for this version.

The tag is named emacs-27.0.90, and points to
c5f255d68156926923232b1edadf50faac527861 2020-02-29 "; Update
lisp/ldefs-boot.el"
https://git.savannah.gnu.org/cgit/emacs.git/tag/?h=emacs-27.0.90

d424195905 is a few commits behind it, so you probably just need to pull again.



^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Emacs 27.0.90 is out!
  2020-03-05  6:40     ` Eli Zaretskii
@ 2020-03-06  2:18       ` Paul Eggert
  0 siblings, 0 replies; 13+ messages in thread
From: Paul Eggert @ 2020-03-06  2:18 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: nljlistbox2, emacs-devel, nico

On 3/4/20 10:40 PM, Eli Zaretskii wrote:

> I'm not yet sure which part(s) of the changeset directly shut up the
> "-Walloc-size-larger-than=N" warnings.  Is that the part that adds the
> calls to 'assume'?

Yes.

> If so, we already call eassume in many places; it
> won't be a problem to add a few more, and fix the warnings on the
> emacs-27 branch.

I'd rather not backport this stuff into the emacs-27 branch, since the 
eassume calls do not fix bugs and can change the code generated and 
therefore can inadvertently introduce bugs. People building on emacs-27 
can either live with the warnings, or use ordinary GCC options instead 
of unusual ones, or not enable warnings.

Pacifying GCC when Emacs is built with unusual options is a low-priority 
thing to do, as we can't feasibly pacify GCC's false alarms under every 
option combination (there are far too many combinations and pacifying 
GCC in every instance would cause make-work maintenance and complicate 
Emacs and wouldn't make Emacs more reliable). Instead, we should merely 
suggest to people to not enable GCC warnings when they are employing 
unusual GCC options.

> And what about a similar warning I reported in bug#39857?

That's a false alarm, and I suppose it's a bug in the particular GCC 
build that you used. I expect the simplest workaround is stick to the 
usual compiler options (i.e., avoid -Og), or to disable GCC warnings. 
For what it's worth I can't reproduce the problem on Fedora 31 x86 
(i.e., 32-bit) with GCC 9.2.1 20190827 (Red Hat 9.2.1-1), so perhaps you 
can work around the problem by using a newer GCC.



^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: Emacs 27.0.90 is out!
  2020-03-05 14:19   ` Noam Postavsky
@ 2020-03-06 15:25     ` Pieter van Oostrum
  0 siblings, 0 replies; 13+ messages in thread
From: Pieter van Oostrum @ 2020-03-06 15:25 UTC (permalink / raw)
  To: emacs-devel

Noam Postavsky <npostavs@gmail.com> writes:

> On Thu, 5 Mar 2020 at 09:02, Pieter van Oostrum <pieter-l@vanoostrum.org> wrote:
>
>> >   https://alpha.gnu.org/gnu/emacs/pretest/emacs-27.0.90.tar.xz
>>
>> I prefer to compile emacs from Git. I think this pretest is commit d424195905, is that right?
>> There seems to be no tag for this version.
>
> The tag is named emacs-27.0.90, and points to
> c5f255d68156926923232b1edadf50faac527861 2020-02-29 "; Update
> lisp/ldefs-boot.el"
> https://git.savannah.gnu.org/cgit/emacs.git/tag/?h=emacs-27.0.90
>
> d424195905 is a few commits behind it, so you probably just need to pull again.

Thanks, in my local git clone I can find commit c5f255d68156926923232b1edadf50faac527861, but there is no tag emacs-27.0.90, although I can see that tag in the Web interface on savannah.

What could be the cause of that?
-- 
Pieter van Oostrum
www: http://pieter.vanoostrum.org/
PGP key: [8DAE142BE17999C4]



^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2020-03-06 15:25 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-03-03 12:09 Emacs 27.0.90 is out! Nicolas Petton
2020-03-03 13:40 ` N. Jackson
2020-03-03 16:09   ` Eli Zaretskii
2020-03-03 16:30     ` N. Jackson
2020-03-04 21:51   ` Paul Eggert
2020-03-05  6:40     ` Eli Zaretskii
2020-03-06  2:18       ` Paul Eggert
2020-03-04  3:21 ` Richard Stallman
2020-03-04  3:40   ` Eli Zaretskii
2020-03-05  8:12 ` Philippe Vaucher
2020-03-05 13:52 ` Pieter van Oostrum
2020-03-05 14:19   ` Noam Postavsky
2020-03-06 15:25     ` Pieter van Oostrum

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).