bug#39183: Missing ‘scm_sym_’ symbols in libguile-3.0.so
Ludovic Courtès <[email protected]>
| Newsgroups | gmane.lisp.guile.bugs |
|---|---|
| Message-ID | <[email protected]> |
Hello, Libguile in 3.0.0 lacks all the C exports for variables created with ‘SCM_GLOBAL_SYMBOL’ in ‘expand.c’: --8<---------------cut here---------------start------------->8--- $ objdump -T /gnu/store/b9xkl8vbxbyblzkwp7xzwwmharswkbgy-guile-2.2.6-1/lib/libguile-2.2.so |grep scm_sym_lambda 000000000012c298 g DO .bss 0000000000000008 GUILE_2.0 scm_sym_lambda $ objdump -T /gnu/store/7z0zzqbchcjmc1krwhy0jd5hsny5y77w-guile-next-3.0.0/lib/libguile-3.0.so |grep scm_sym_lambda --8<---------------cut here---------------end--------------->8--- That’s because they accidentally ended up having the “hidden” visibility, which is fixed by the patch below. This will obviously augment the ABI. Should we push? Thanks, Ludo’.
(unnamed)
(text/x-patch, 515 B)
diff --git a/libguile/expand.c b/libguile/expand.c
index 11e43c2b9..6ba65ffa2 100644
--- a/libguile/expand.c
+++ b/libguile/expand.c
@@ -1,4 +1,4 @@
-/* Copyright 1995-2014,2016,2018-2019
+/* Copyright 1995-2014,2016,2018-2020
Free Software Foundation, Inc.
This file is part of Guile.
@@ -32,6 +32,7 @@
#include "keywords.h"
#include "list.h"
#include "macros.h"
+#include "memoize.h" /* for the SCM_API declarations of 'scm_sym_' */
#include "modules.h"
#include "pairs.h"
#include "ports.h"