Neil Jerram <n...@ossau.uklinux.net> writes: > "carlo.bramix" <carlo.bra...@libero.it> writes: > >> $ ./pre-inst-guile -c '(display "foo")' >> Backtrace: >> In unknown file: >> ?: 0* (begin (eval-string "(display") (quit)) >> ?: 1* [eval-string "(display"] > > That is weird. > > Can we first rule out a problem with your shell? What output do you > get from this? > > $ set - '(display "foo")' && echo "--${1}--" && echo "--${2}--"
Assuming that that gives the expected output, i.e. --(display "foo")-- ---- my next suggestion would be to run under GDB, with a breakpoint on scm_shell(). The invocation for doing that is ./pre-inst-guile-env ./libtool --mode=execute gdb libguile/guile -c '(display "foo")' In scm_shell, I would expect: argc to be 3 argv[1] to be "-c" argv[2] to be "(display \"foo\")" scm_get_meta_args () to return 0 and hence not to execute the "if (new_argv)" block of code. Can you check those points? Regards, Neil