Subject: bug#31118: 27.0.50; Can't load/compile websocket in 32bit master

From: Paul Eggert <[email-masked]>
Date: Tue, 17 Apr 2018 16:53:32 -0700

On 04/17/2018 05:18 AM, Stefan Monnier wrote:
> If we want to signal an error by default, then I think it's important
> for this error to give clear steps to set read-integer-overflow-as-float

Something like the attached patch, perhaps?

>From eb2fa1a00c5c85aced40900b59183dc03d822958 Mon Sep 17 00:00:00 2001
From: Paul Eggert <[email-masked]>
Date: Tue, 17 Apr 2018 16:52:04 -0700
Subject: [PATCH] Tell user about read-integer-overflow-as-float

* src/lread.c (string_to_number): Suggest
read-integer-overflow-as-float in signal message.
Suggested by Stefan Monnier (Bug#31118#58).
---
 src/lread.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/src/lread.c b/src/lread.c
index 6eda740540..16e34aff0c 100644
--- a/src/lread.c
+++ b/src/lread.c
@@ -3797,7 +3797,12 @@ string_to_number (char const *string, int base, int flags)
 	value = n;
 
       if (! (state & DOT_CHAR) && ! (flags & S2N_OVERFLOW_TO_FLOAT))
-	xsignal1 (Qoverflow_error, build_string (string));
+	{
+	  AUTO_STRING (fmt, ("%s is out of fixnum range; "
+			     "maybe set `read-integer-overflow-as-float'?"));
+	  xsignal1 (Qoverflow_error,
+		    CALLN (Fformat_message, fmt, build_string (string)));
+	}
     }
 
   /* Either the number uses float syntax, or it does not fit into a fixnum.
-- 
2.14.3