I put the following test module in my load path: (define-module (current-filename-fail) :export (my-filename)) (define my-filename (current-filename)) (define (force-a-warning-message) (identity 1 2 3))
And this is what I see with Guile 2.0.5: GNU Guile 2.0.5 Copyright (C) 1995-2012 Free Software Foundation, Inc. Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'. This program is free software, and you are welcome to redistribute it under certain conditions; type `,show c' for details. Enter `,help' for help. scheme@(guile-user)> ,use (current-filename-fail) ;;; note: auto-compilation is enabled, set GUILE_AUTO_COMPILE=0 ;;; or pass the --no-auto-compile argument to disable. ;;; compiling /home/mhw/guile-modules/current-filename-fail.scm ;;; current-filename-fail.scm:4:34: warning: possibly wrong number of arguments to `identity' ;;; compiled /home/mhw/.cache/guile/ccache/2.0-LE-4-2.0/home/mhw/guile-modules/current-filename-fail.scm.go scheme@(guile-user)> my-filename $1 = #f The (force-a-warning-message) line shows that source information is available. The same thing happens if I remove that line, or if I try with stable-2.0. What am I doing wrong? Thanks, Mark