[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Slib-discuss] Warning with guile-2.init and guile-3.0
From: |
Nick Gasson |
Subject: |
[Slib-discuss] Warning with guile-2.init and guile-3.0 |
Date: |
Sat, 19 Dec 2020 19:59:15 +0800 |
User-agent: |
mu4e 1.4.13; emacs 27.1 |
Hi,
I've been updating the Debian packaging for slib. With guile-3.0,
guile-2.init gives the following warning (but otherwise works ok):
WARNING: Use of `load' in declarative module (ice-9 slib). Add #:declarative?
#f to your define-module invocation.
Unfortunately older versions of Guile don't accept #:declarative? #f in
define-module so I had to do the ugly hack below with cond-expand. Not
sure if there's any better way to do this?
--
Thanks,
Nick
diff --git guile-2.init guile-2.init
index 7c8b540..4cfa2dd 100755
--- guile-2.init
+++ guile-2.init
@@ -4,172 +4,340 @@
;;;
;;; This code is in the public domain.
+;;; The duplicated define-module here is because we need to pass
+;;; #:declarative #f for Guile 3.0 to avoid a warning about using (load)
+;;; in a declarative module. But Guile 2.x does not support this
+;;; keyword.
(cond-expand
- (guile-2)
- (else
- (error "Guile 2.0 or later is required.")))
-
-(define-module (ice-9 slib)
- #:use-module ((ice-9 popen) #:select (open-input-pipe close-pipe))
- #:use-module ((ice-9 rdelim) #:select (read-line read-line! write-line))
- #:re-export (read-line read-line! write-line)
- #:export (<=?
- <?
- =?
- >=?
- >?
- A:bool
- A:fixN16b
- A:fixN32b
- A:fixN64b
- A:fixN8b
- A:fixZ16b
- A:fixZ32b
- A:fixZ64b
- A:fixZ8b
- A:floC128b
- A:floC16b
- A:floC32b
- A:floC64b
- A:floR128b
- A:floR128d
- A:floR16b
- A:floR32b
- A:floR32d
- A:floR64b
- A:floR64d
- a:bool
- a:fixn16b
- a:fixn32b
- a:fixn64b
- a:fixn8b
- a:fixz16b
- a:fixz32b
- a:fixz64b
- a:fixz8b
- a:floc128b
- a:floc16b
- a:floc32b
- a:floc64b
- a:flor128b
- a:flor128d
- a:flor16b
- a:flor32b
- a:flor32d
- a:flor64b
- a:flor64d
- any-bits-set?
- arithmetic-shift
- array-indexes
- array-null?
- array:copy!
- ;; ac32
- ;; ac64
- ;; ar32
- ;; ar64
- ;; as16
- ;; as32
- ;; as64
- ;; as8
- ;; at1
- ;; au16
- ;; au32
- ;; au64
- ;; au8
- bit-field
- bit-reverse
- bit-set?
- bitwise-and
- bitwise-if
- bitwise-ior
- bitwise-merge
- bitwise-not
- bitwise-xor
- booleans->integer
- browse-url
- call-with-open-ports
- copy-bit
- copy-bit-field
- create-array
- ;;define
- defmacro:eval
- defmacro:expand*
- defmacro:load
- ;;delete-file
- difftime
- ;;file-position
- first-set-bit
- gentemp
- home-vicinity
- implementation-vicinity
- integer->list
- library-vicinity
- list->array
- list->integer
- log2-binary-factors
- logical:ash
- logical:bit-extract
- logical:integer-expt
- logical:integer-length
- ;;logical:ipow-by-squaring
- logical:logand
- logical:logcount
- logical:logior
- logical:lognot
- logical:logxor
- macro:eval
- macro:load
- make-array
- make-exchanger
- make-random-state
- ;;make-uniform-wrapper
- make-vicinity
- ;; nil
- offset-time
- ;;open-file
- output-port-height
- output-port-width
- pathname->vicinity
- program-vicinity
- random:chunk
- reverse-bit-field
- rotate-bit-field
- scheme-implementation-home-page
- scheme-implementation-type
- scheme-implementation-version
- ;; slib-module
- slib:error
- slib:eval
- slib:eval-load
- slib:exit
- ;; slib:features
- slib:form-feed
- slib:load
- slib:load-compiled
- slib:load-source
- slib:tab
- slib:warn
- software-type
- sub-vicinity
- ;;system
- system->line
- ;; t
- user-vicinity
- vector->array
- ;; vicinity:suffix?
- ;; with-load-pathname
- )
- #:replace (file-position
- system
- open-file
- delete-file
- char-code-limit
- scheme-file-suffix
- gentemp
- make-array
- list->array
- provide
- provided?))
+ (guile-3
+ (define-module (ice-9 slib)
+ #:use-module ((ice-9 popen) #:select (open-input-pipe close-pipe))
+ #:use-module ((ice-9 rdelim) #:select (read-line read-line! write-line))
+ #:re-export (read-line read-line! write-line)
+ #:declarative? #f
+ #:export (<=?
+ <?
+ =?
+ >=?
+ >?
+ A:bool
+ A:fixN16b
+ A:fixN32b
+ A:fixN64b
+ A:fixN8b
+ A:fixZ16b
+ A:fixZ32b
+ A:fixZ64b
+ A:fixZ8b
+ A:floC128b
+ A:floC16b
+ A:floC32b
+ A:floC64b
+ A:floR128b
+ A:floR128d
+ A:floR16b
+ A:floR32b
+ A:floR32d
+ A:floR64b
+ A:floR64d
+ a:bool
+ a:fixn16b
+ a:fixn32b
+ a:fixn64b
+ a:fixn8b
+ a:fixz16b
+ a:fixz32b
+ a:fixz64b
+ a:fixz8b
+ a:floc128b
+ a:floc16b
+ a:floc32b
+ a:floc64b
+ a:flor128b
+ a:flor128d
+ a:flor16b
+ a:flor32b
+ a:flor32d
+ a:flor64b
+ a:flor64d
+ any-bits-set?
+ arithmetic-shift
+ array-indexes
+ array-null?
+ array:copy!
+ ;; ac32
+ ;; ac64
+ ;; ar32
+ ;; ar64
+ ;; as16
+ ;; as32
+ ;; as64
+ ;; as8
+ ;; at1
+ ;; au16
+ ;; au32
+ ;; au64
+ ;; au8
+ bit-field
+ bit-reverse
+ bit-set?
+ bitwise-and
+ bitwise-if
+ bitwise-ior
+ bitwise-merge
+ bitwise-not
+ bitwise-xor
+ booleans->integer
+ browse-url
+ call-with-open-ports
+ copy-bit
+ copy-bit-field
+ create-array
+ ;;define
+ defmacro:eval
+ defmacro:expand*
+ defmacro:load
+ ;;delete-file
+ difftime
+ ;;file-position
+ first-set-bit
+ gentemp
+ home-vicinity
+ implementation-vicinity
+ integer->list
+ library-vicinity
+ list->array
+ list->integer
+ log2-binary-factors
+ logical:ash
+ logical:bit-extract
+ logical:integer-expt
+ logical:integer-length
+ ;;logical:ipow-by-squaring
+ logical:logand
+ logical:logcount
+ logical:logior
+ logical:lognot
+ logical:logxor
+ macro:eval
+ macro:load
+ make-array
+ make-exchanger
+ make-random-state
+ ;;make-uniform-wrapper
+ make-vicinity
+ ;; nil
+ offset-time
+ ;;open-file
+ output-port-height
+ output-port-width
+ pathname->vicinity
+ program-vicinity
+ random:chunk
+ reverse-bit-field
+ rotate-bit-field
+ scheme-implementation-home-page
+ scheme-implementation-type
+ scheme-implementation-version
+ ;; slib-module
+ slib:error
+ slib:eval
+ slib:eval-load
+ slib:exit
+ ;; slib:features
+ slib:form-feed
+ slib:load
+ slib:load-compiled
+ slib:load-source
+ slib:tab
+ slib:warn
+ software-type
+ sub-vicinity
+ ;;system
+ system->line
+ ;; t
+ user-vicinity
+ vector->array
+ ;; vicinity:suffix?
+ ;; with-load-pathname
+ )
+ #:replace (file-position
+ system
+ open-file
+ delete-file
+ char-code-limit
+ scheme-file-suffix
+ gentemp
+ make-array
+ list->array
+ provide
+ provided?)))
+
+ (guile-2
+ (define-module (ice-9 slib)
+ #:use-module ((ice-9 popen) #:select (open-input-pipe close-pipe))
+ #:use-module ((ice-9 rdelim) #:select (read-line read-line! write-line))
+ #:re-export (read-line read-line! write-line)
+ #:export (<=?
+ <?
+ =?
+ >=?
+ >?
+ A:bool
+ A:fixN16b
+ A:fixN32b
+ A:fixN64b
+ A:fixN8b
+ A:fixZ16b
+ A:fixZ32b
+ A:fixZ64b
+ A:fixZ8b
+ A:floC128b
+ A:floC16b
+ A:floC32b
+ A:floC64b
+ A:floR128b
+ A:floR128d
+ A:floR16b
+ A:floR32b
+ A:floR32d
+ A:floR64b
+ A:floR64d
+ a:bool
+ a:fixn16b
+ a:fixn32b
+ a:fixn64b
+ a:fixn8b
+ a:fixz16b
+ a:fixz32b
+ a:fixz64b
+ a:fixz8b
+ a:floc128b
+ a:floc16b
+ a:floc32b
+ a:floc64b
+ a:flor128b
+ a:flor128d
+ a:flor16b
+ a:flor32b
+ a:flor32d
+ a:flor64b
+ a:flor64d
+ any-bits-set?
+ arithmetic-shift
+ array-indexes
+ array-null?
+ array:copy!
+ ;; ac32
+ ;; ac64
+ ;; ar32
+ ;; ar64
+ ;; as16
+ ;; as32
+ ;; as64
+ ;; as8
+ ;; at1
+ ;; au16
+ ;; au32
+ ;; au64
+ ;; au8
+ bit-field
+ bit-reverse
+ bit-set?
+ bitwise-and
+ bitwise-if
+ bitwise-ior
+ bitwise-merge
+ bitwise-not
+ bitwise-xor
+ booleans->integer
+ browse-url
+ call-with-open-ports
+ copy-bit
+ copy-bit-field
+ create-array
+ ;;define
+ defmacro:eval
+ defmacro:expand*
+ defmacro:load
+ ;;delete-file
+ difftime
+ ;;file-position
+ first-set-bit
+ gentemp
+ home-vicinity
+ implementation-vicinity
+ integer->list
+ library-vicinity
+ list->array
+ list->integer
+ log2-binary-factors
+ logical:ash
+ logical:bit-extract
+ logical:integer-expt
+ logical:integer-length
+ ;;logical:ipow-by-squaring
+ logical:logand
+ logical:logcount
+ logical:logior
+ logical:lognot
+ logical:logxor
+ macro:eval
+ macro:load
+ make-array
+ make-exchanger
+ make-random-state
+ ;;make-uniform-wrapper
+ make-vicinity
+ ;; nil
+ offset-time
+ ;;open-file
+ output-port-height
+ output-port-width
+ pathname->vicinity
+ program-vicinity
+ random:chunk
+ reverse-bit-field
+ rotate-bit-field
+ scheme-implementation-home-page
+ scheme-implementation-type
+ scheme-implementation-version
+ ;; slib-module
+ slib:error
+ slib:eval
+ slib:eval-load
+ slib:exit
+ ;; slib:features
+ slib:form-feed
+ slib:load
+ slib:load-compiled
+ slib:load-source
+ slib:tab
+ slib:warn
+ software-type
+ sub-vicinity
+ ;;system
+ system->line
+ ;; t
+ user-vicinity
+ vector->array
+ ;; vicinity:suffix?
+ ;; with-load-pathname
+ )
+ #:replace (file-position
+ system
+ open-file
+ delete-file
+ char-code-limit
+ scheme-file-suffix
+ gentemp
+ make-array
+ list->array
+ provide
+ provided?)))
+
+ (else
+ (error "Guile 2.0 or later is required.")))
(module-export-all! (current-module))
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Slib-discuss] Warning with guile-2.init and guile-3.0,
Nick Gasson <=