guile-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Unbound variable: cond-expand-provide


From: Sunjoong Lee
Subject: Unbound variable: cond-expand-provide
Date: Fri, 4 May 2012 00:50:44 +0900

Hello,

I thought cond-expand-provide be available in everywhere but saw a compile error, "ERROR: In procedure module-lookup: Unbound variable: cond-expand-provide". I don't know why this is happening; do you have any idea or comments? Thanks in advance.

test-load in attatched archive file is a script to load srfi-64.scm. This is very simple like this:

#!/usr/bin/guile \
-e main -s
!#
;;; Set %load-path
(eval-when
 (compile load eval)
 (let ((%current-filename (current-filename)))
   (if %current-filename
       (let ((%current-path (dirname %current-filename)))
         (if (not (memq %current-path %load-path))
             (add-to-load-path %current-path))))))
;;; Fake main for "-e main" option of Guile
(define (main . args)
  (let ((module (resolve-module '(test-load))))
    (apply (module-ref module 'main) args)))
;;; Module
(define-module (test-load)
  #:use-module (srfi srfi-64)
  #:export (main))
;;; Real main
(define (main args) #f)

In srfi-64.scm, I had used "(cond-expand-provide (current-module) '(srfi-64))" like other srfi modules.

Frist execution of above script is fine:
  $ ./test-load 
  ;;; note: auto-compilation is enabled, set GUILE_AUTO_COMPILE=0
  ;;;       or pass the --no-auto-compile argument to disable.
  ;;; compiling /home/sunjoong/test-load/./test-load
  ;;; compiling /home/sunjoong/test-load/srfi/srfi-64.scm
  ;;; compiled /home/sunjoong/.cache/guile/ccache/2.0-LE-4-2.0/home/sunjoong/test-load/srfi/srfi-64.scm.go
  ;;; compiled /home/sunjoong/.cache/guile/ccache/2.0-LE-4-2.0/home/sunjoong/test-load/test-load.go

In second execution, I saw "Unbound variable: cond-expand-provide":
  $ ./test-load 
  Backtrace:
  In ice-9/boot-9.scm:
   149: 17 [catch #t #<catch-closure 96a8540> ...]
   157: 16 [#<procedure 96708c0 ()>]
  In unknown file:
     ?: 15 [catch-closure]
  In ice-9/boot-9.scm:
    63: 14 [call-with-prompt prompt0 ...]
  In ice-9/eval.scm:
   407: 13 [eval # #]
  In ice-9/boot-9.scm:
  2111: 12 [save-module-excursion #<procedure 965d040 at ice-9/boot-9.scm:3646:3 ()>]
  3653: 11 [#<procedure 965d040 at ice-9/boot-9.scm:3646:3 ()>]
  In unknown file:
     ?: 10 [load-compiled/vm "/home/sunjoong/.cache/guile/ccache/2.0-LE-4-2.0/home/sunjoong/test-load/test-load.go"]
  In /home/sunjoong/test-load/./test-load:
    20: 9 [#<procedure 96b6210 ()>]
  In ice-9/boot-9.scm:
  2667: 8 [define-module* (test-load) #:filename ...]
  2642: 7 [resolve-imports (((srfi srfi-64)))]
  2580: 6 [resolve-interface (srfi srfi-64) #:select ...]
  2505: 5 [#<procedure 966df60 at ice-9/boot-9.scm:2493:4 (name #:optional autoload version #:key ensure)> # ...]
  2772: 4 [try-module-autoload (srfi srfi-64) #f]
  2111: 3 [save-module-excursion #<procedure 96abcf0 at ice-9/boot-9.scm:2773:17 ()>]
  2783: 2 [#<procedure 96abcf0 at ice-9/boot-9.scm:2773:17 ()>]
  In unknown file:
     ?: 1 [primitive-load-path "srfi/srfi-64" #f]
  In srfi/srfi-64.scm:
    85: 0 [#<procedure 967d020 ()>]
  
  srfi/srfi-64.scm:85:2: In procedure #<procedure 967d020 ()>:
  srfi/srfi-64.scm:85:2: In procedure module-lookup: Unbound variable: cond-expand-provide

Attachment: test-load.tar.gz
Description: GNU Zip compressed data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]