guile-user
[Top][All Lists]
Advanced

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

How to get better stack trace from a script executed via shebang?


From: Wolf
Subject: How to get better stack trace from a script executed via shebang?
Date: Thu, 2 Feb 2023 17:11:21 +0100

Hello,

I'm having a problem of getting borderline useless stack traces from a script
executed via a shebang. For example, let's consider following script:

    $ cat /tmp/x.scm 
    #!/bin/sh
    exec guile --no-auto-compile -e main -s "$0" "$@"
    !#
    
    (define (main args)
      (foo))
    
    (define (foo)
      (bar))
    
    (define (bar)
      (error "x"))

When I execute it directly, the error message is not great:

    $ /tmp/x.scm
    Backtrace:
    In ice-9/boot-9.scm:
      1752:10  4 (with-exception-handler _ _ #:unwind? _ #:unwind-for-type _)
    In unknown file:
               3 (apply-smob/0 #<thunk 7fdb1e7a2340>)
    In ice-9/boot-9.scm:
        724:2  2 (call-with-prompt ("prompt") #<procedure 7fdb1e7b2c80 at 
ice-9/eval.scm:330:13 ()> #<procedure default-prompt-handler (k proc)>)
    In ice-9/eval.scm:
        619:8  1 (_ #(#(#<directory (guile-user) 7fdb1e7a5c80>)))
    In ice-9/boot-9.scm:
       2007:7  0 (error _ . _)
    
    ice-9/boot-9.scm:2007:7: In procedure error:
    x

The /tmp/x.scm file is not even mentioned once in the output. Can this be
somehow (command line arguments, changing the exec line, ...) improved?
Currently it's not very useful when I need to find out what the problem was.

Thank you,
W.

-- 
There are only two hard things in Computer Science:
cache invalidation, naming things and off-by-one errors.

Attachment: signature.asc
Description: PGP signature


reply via email to

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