aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2020-06-28 16:25:40 +0200
committerSimon Marchi <simon.marchi@efficios.com>2020-07-20 11:00:55 -0400
commitae5369e773c341ab55a130fffb4678bb3595d692 (patch)
tree209745e75f62eba0a5b42868a1f51ed42a14acd2
parent68cf161c24b096608bf4a1b97b489cc7277bffc0 (diff)
downloadgdb-ae5369e773c341ab55a130fffb4678bb3595d692.zip
gdb-ae5369e773c341ab55a130fffb4678bb3595d692.tar.gz
gdb-ae5369e773c341ab55a130fffb4678bb3595d692.tar.bz2
guile: Add support for Guile 3.0.
gdb/ChangeLog 2020-06-28 Ludovic Courtès <ludo@gnu.org> * guile/scm-math.c (vlscm_integer_fits_p): Use 'uintmax_t' and 'intmax_t' instead of 'scm_t_uintmax' and 'scm_t_intmax', which are deprecated in Guile 3.0. * configure.ac (try_guile_versions): Add "guile-3.0". * configure (try_guile_versions): Regenerate. * NEWS: Update entry. gdb/testsuite/ChangeLog 2020-06-28 Ludovic Courtès <ludo@gnu.org> * gdb.guile/source2.scm: Add #f first argument to 'format'. * gdb.guile/types-module.exp: Remove "ERROR:" from regexps since Guile 3.0 no longer prints that. gdb/doc/ChangeLog 2020-06-28 Ludovic Courtès <ludo@gnu.org> * doc/guile.texi (Guile Introduction): Mention Guile 3.0. Change-Id: Iff116c2e40f334e4e0ca4e759a097bfd23634679
-rw-r--r--gdb/ChangeLog9
-rw-r--r--gdb/NEWS2
-rwxr-xr-xgdb/configure2
-rw-r--r--gdb/configure.ac2
-rw-r--r--gdb/doc/ChangeLog4
-rw-r--r--gdb/doc/guile.texi2
-rw-r--r--gdb/guile/scm-math.c4
-rw-r--r--gdb/testsuite/ChangeLog6
-rw-r--r--gdb/testsuite/gdb.guile/source2.scm2
-rw-r--r--gdb/testsuite/gdb.guile/types-module.exp6
10 files changed, 29 insertions, 10 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 8305a27..30ef2c8 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,12 @@
+2020-07-20 Ludovic Courtès <ludo@gnu.org>
+
+ * guile/scm-math.c (vlscm_integer_fits_p): Use 'uintmax_t'
+ and 'intmax_t' instead of 'scm_t_uintmax' and 'scm_t_intmax',
+ which are deprecated in Guile 3.0.
+ * configure.ac (try_guile_versions): Add "guile-3.0".
+ * configure (try_guile_versions): Regenerate.
+ * NEWS: Update entry.
+
2020-07-20 Ludovic Courtès <ludo@gnu.org>
Doug Evans <dje@google.com>
diff --git a/gdb/NEWS b/gdb/NEWS
index b191262..001dc5e 100644
--- a/gdb/NEWS
+++ b/gdb/NEWS
@@ -132,7 +132,7 @@ GNU/Linux/RISC-V (gdbserver) riscv*-*-linux*
* Guile API
- ** GDB can now be built with GNU Guile 2.2 in addition to 2.0.
+ ** GDB can now be built with GNU Guile 3.0 and 2.2 in addition to 2.0.
** Procedures 'memory-port-read-buffer-size',
'set-memory-port-read-buffer-size!', 'memory-port-write-buffer-size',
diff --git a/gdb/configure b/gdb/configure
index 3b71d03..b259db5 100755
--- a/gdb/configure
+++ b/gdb/configure
@@ -10959,7 +10959,7 @@ fi
-try_guile_versions="guile-2.2 guile-2.0"
+try_guile_versions="guile-3.0 guile-2.2 guile-2.0"
have_libguile=no
case "${with_guile}" in
no)
diff --git a/gdb/configure.ac b/gdb/configure.ac
index 0b40062..f9461b2 100644
--- a/gdb/configure.ac
+++ b/gdb/configure.ac
@@ -1088,7 +1088,7 @@ AC_MSG_RESULT([$with_guile])
dnl We check guile with pkg-config.
AC_PATH_PROG(pkg_config_prog_path, pkg-config, missing)
-try_guile_versions="guile-2.2 guile-2.0"
+try_guile_versions="guile-3.0 guile-2.2 guile-2.0"
have_libguile=no
case "${with_guile}" in
no)
diff --git a/gdb/doc/ChangeLog b/gdb/doc/ChangeLog
index a573d20..031e0ef 100644
--- a/gdb/doc/ChangeLog
+++ b/gdb/doc/ChangeLog
@@ -1,5 +1,9 @@
2020-07-20 Ludovic Courtès <ludo@gnu.org>
+ * doc/guile.texi (Guile Introduction): Mention Guile 3.0.
+
+2020-07-20 Ludovic Courtès <ludo@gnu.org>
+
* guile.texi (Memory Ports in Guile): Mark
'memory-port-read-buffer-size',
'set-memory-port-read-buffer-size!',
diff --git a/gdb/doc/guile.texi b/gdb/doc/guile.texi
index 52da7e7..9d1f55a 100644
--- a/gdb/doc/guile.texi
+++ b/gdb/doc/guile.texi
@@ -38,7 +38,7 @@ Guile support in @value{GDBN} follows the Python support in @value{GDBN}
reasonably closely, so concepts there should carry over.
However, some things are done differently where it makes sense.
-@value{GDBN} requires Guile version 2.2 or 2.0.
+@value{GDBN} requires Guile version 3.0, 2.2, or 2.0.
@cindex guile scripts directory
Guile scripts used by @value{GDBN} should be installed in
diff --git a/gdb/guile/scm-math.c b/gdb/guile/scm-math.c
index 7c63fa2..419f509 100644
--- a/gdb/guile/scm-math.c
+++ b/gdb/guile/scm-math.c
@@ -578,7 +578,7 @@ vlscm_integer_fits_p (SCM obj, struct type *type)
ULONGEST max;
/* If scm_is_unsigned_integer can't work with this type, just punt. */
- if (TYPE_LENGTH (type) > sizeof (scm_t_uintmax))
+ if (TYPE_LENGTH (type) > sizeof (uintmax_t))
return 0;
get_unsigned_type_max (type, &max);
return scm_is_unsigned_integer (obj, 0, max);
@@ -588,7 +588,7 @@ vlscm_integer_fits_p (SCM obj, struct type *type)
LONGEST min, max;
/* If scm_is_signed_integer can't work with this type, just punt. */
- if (TYPE_LENGTH (type) > sizeof (scm_t_intmax))
+ if (TYPE_LENGTH (type) > sizeof (intmax_t))
return 0;
get_signed_type_minmax (type, &min, &max);
return scm_is_signed_integer (obj, min, max);
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index 885d317..7dca586 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,5 +1,11 @@
2020-07-20 Ludovic Courtès <ludo@gnu.org>
+ * gdb.guile/source2.scm: Add #f first argument to 'format'.
+ * gdb.guile/types-module.exp: Remove "ERROR:" from
+ regexps since Guile 3.0 no longer prints that.
+
+2020-07-20 Ludovic Courtès <ludo@gnu.org>
+
* gdb.guile/scm-error.exp ("source $remote_guile_file_1"): Relax
error regexp to match on Guile 2.2.
diff --git a/gdb/testsuite/gdb.guile/source2.scm b/gdb/testsuite/gdb.guile/source2.scm
index 3963805..c39f038 100644
--- a/gdb/testsuite/gdb.guile/source2.scm
+++ b/gdb/testsuite/gdb.guile/source2.scm
@@ -15,5 +15,5 @@
;; You should have received a copy of the GNU General Public License
;; along with this program. If not, see <http://www.gnu.org/licenses/>.
-(display (format "y~As" "e"))
+(display (format #f "y~As" "e"))
(newline)
diff --git a/gdb/testsuite/gdb.guile/types-module.exp b/gdb/testsuite/gdb.guile/types-module.exp
index 5a631dc..8ced6fb 100644
--- a/gdb/testsuite/gdb.guile/types-module.exp
+++ b/gdb/testsuite/gdb.guile/types-module.exp
@@ -44,7 +44,7 @@ gdb_test "guile (print (type-has-field-deep? d \"base_member\"))" \
"= #t" "type-has-field-deep? member in baseclass"
gdb_test "guile (print (type-has-field-deep? (lookup-type \"int\") \"base_member\"))" \
- "ERROR: .*Wrong type argument in position 1 \\(expecting struct or union\\): #<gdb:type int>.*" \
+ "Wrong type argument in position 1 \\(expecting struct or union\\): #<gdb:type int>.*" \
"type-has-field-deep? from int"
gdb_scm_test_silent_cmd "guile (define enum-htab (make-enum-hashtable (lookup-type \"enum_type\")))" \
@@ -54,9 +54,9 @@ gdb_test "guile (print (hash-ref enum-htab \"B\"))" \
"= 1" "verify make-enum-hashtable"
gdb_test "guile (define bad-enum-htab (make-enum-hashtable #f))" \
- "ERROR: .*Wrong type argument in position 1 \\(expecting gdb:type\\): #f.*" \
+ "Wrong type argument in position 1 \\(expecting gdb:type\\): #f.*" \
"make-enum-hashtable from #f"
gdb_test "guile (define bad-enum-htab (make-enum-hashtable (lookup-type \"int\")))" \
- "ERROR: .*Wrong type argument in position 1 \\(expecting enum\\): #<gdb:type int>.*" \
+ "Wrong type argument in position 1 \\(expecting enum\\): #<gdb:type int>.*" \
"make-enum-hashtable from int"