|
From: Robert D. <rob...@us...> - 2025-12-10 17:48:53
|
---
**[bugs:#4647] Maxima error in --preload file causes Lisp error**
**Status:** open
**Group:** None
**Labels:** command line batch error handling
**Created:** Wed Dec 10, 2025 05:48 PM UTC by Robert Dodier
**Last Updated:** Wed Dec 10, 2025 05:48 PM UTC
**Owner:** nobody
Working with a recent build (1c6a095). A Maxima error in a file loaded via `--preload` causes a Lisp error, and puts the user in the Lisp debugger.
E.g. let `foo.mac` contain just `error("Foo");`. Then:
```
sh maxima-local -l sbcl -p foo.mac
read and interpret /home/dodier/sourceforge/maxima-code/foo.mac
Foo
-- an error. To debug this try: debugmode(true);
Maxima encountered a Lisp error:
attempt to THROW to a tag that does not exist: MACSYMA-QUIT
Automatically continuing.
To enable the Lisp debugger set *debugger-hook* to nil.
debugger invoked on a SB-INT:SIMPLE-CONTROL-ERROR @52A00940 in thread
#<THREAD "main thread" RUNNING {10028F4103}>:
attempt to THROW to a tag that does not exist: RETURN-FROM-DEBUGGER
Type HELP for debugger help, or (SB-EXT:EXIT) to exit from SBCL.
restarts (invokable by number or by possibly-abbreviated name):
0: [CONTINUE] Ignore runtime option --eval "(cl-user::run)".
1: [ABORT ] Skip rest of --eval and --load options.
2: Skip to toplevel READ/EVAL/PRINT loop.
3: [EXIT ] Exit SBCL (calling #'EXIT, killing the process).
(THROW)
0]
```
I think whatever mechanism is loading `--preload` files needs to catch MACSYMA-QUIT and just go on to the next command line argument.
---
Sent from sourceforge.net because max...@li... is subscribed to https://sourceforge.net/p/maxima/bugs/
To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/maxima/admin/bugs/options. Or, if this is a mailing list, you can unsubscribe from the mailing list. |
|
From: Raymond T. <rt...@us...> - 2025-12-10 19:06:11
|
I modified the action for `--preload` to
```
(let (($loadprint (not *maxima-quiet*)))
(catch 'macsyma-quit
($load file)))
```
This works.
---
**[bugs:#4647] Maxima error in --preload file causes Lisp error**
**Status:** open
**Group:** None
**Labels:** command line batch error handling
**Created:** Wed Dec 10, 2025 05:48 PM UTC by Robert Dodier
**Last Updated:** Wed Dec 10, 2025 05:48 PM UTC
**Owner:** nobody
Working with a recent build (1c6a095). A Maxima error in a file loaded via `--preload` causes a Lisp error, and puts the user in the Lisp debugger.
E.g. let `foo.mac` contain just `error("Foo");`. Then:
```
sh maxima-local -l sbcl -p foo.mac
read and interpret /home/dodier/sourceforge/maxima-code/foo.mac
Foo
-- an error. To debug this try: debugmode(true);
Maxima encountered a Lisp error:
attempt to THROW to a tag that does not exist: MACSYMA-QUIT
Automatically continuing.
To enable the Lisp debugger set *debugger-hook* to nil.
debugger invoked on a SB-INT:SIMPLE-CONTROL-ERROR @52A00940 in thread
#<THREAD "main thread" RUNNING {10028F4103}>:
attempt to THROW to a tag that does not exist: RETURN-FROM-DEBUGGER
Type HELP for debugger help, or (SB-EXT:EXIT) to exit from SBCL.
restarts (invokable by number or by possibly-abbreviated name):
0: [CONTINUE] Ignore runtime option --eval "(cl-user::run)".
1: [ABORT ] Skip rest of --eval and --load options.
2: Skip to toplevel READ/EVAL/PRINT loop.
3: [EXIT ] Exit SBCL (calling #'EXIT, killing the process).
(THROW)
0]
```
I think whatever mechanism is loading `--preload` files needs to catch MACSYMA-QUIT and just go on to the next command line argument.
---
Sent from sourceforge.net because max...@li... is subscribed to https://sourceforge.net/p/maxima/bugs/
To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/maxima/admin/bugs/options. Or, if this is a mailing list, you can unsubscribe from the mailing list. |
|
From: Robert D. <rob...@us...> - 2025-12-10 22:05:02
|
Looks good, can you commit that?
---
**[bugs:#4647] Maxima error in --preload file causes Lisp error**
**Status:** open
**Group:** None
**Labels:** command line batch error handling
**Created:** Wed Dec 10, 2025 05:48 PM UTC by Robert Dodier
**Last Updated:** Wed Dec 10, 2025 07:06 PM UTC
**Owner:** nobody
Working with a recent build (1c6a095). A Maxima error in a file loaded via `--preload` causes a Lisp error, and puts the user in the Lisp debugger.
E.g. let `foo.mac` contain just `error("Foo");`. Then:
```
sh maxima-local -l sbcl -p foo.mac
read and interpret /home/dodier/sourceforge/maxima-code/foo.mac
Foo
-- an error. To debug this try: debugmode(true);
Maxima encountered a Lisp error:
attempt to THROW to a tag that does not exist: MACSYMA-QUIT
Automatically continuing.
To enable the Lisp debugger set *debugger-hook* to nil.
debugger invoked on a SB-INT:SIMPLE-CONTROL-ERROR @52A00940 in thread
#<THREAD "main thread" RUNNING {10028F4103}>:
attempt to THROW to a tag that does not exist: RETURN-FROM-DEBUGGER
Type HELP for debugger help, or (SB-EXT:EXIT) to exit from SBCL.
restarts (invokable by number or by possibly-abbreviated name):
0: [CONTINUE] Ignore runtime option --eval "(cl-user::run)".
1: [ABORT ] Skip rest of --eval and --load options.
2: Skip to toplevel READ/EVAL/PRINT loop.
3: [EXIT ] Exit SBCL (calling #'EXIT, killing the process).
(THROW)
0]
```
I think whatever mechanism is loading `--preload` files needs to catch MACSYMA-QUIT and just go on to the next command line argument.
---
Sent from sourceforge.net because max...@li... is subscribed to https://sourceforge.net/p/maxima/bugs/
To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/maxima/admin/bugs/options. Or, if this is a mailing list, you can unsubscribe from the mailing list. |
|
From: Raymond T. <rt...@us...> - 2025-12-10 22:57:27
|
In a bit. But this fix also does something reasonable for lisp files. With your foo.mac, we now get:
```
$ ./maxima-local --preload foo.mac
read and interpret /home/toy/src/sourceforge/maxima/foo.mac
Foo
-- an error. To debug this try: debugmode(true);
```
With foo.lisp containing just `(error "Foo")`, we get:
```
$ ./maxima-local --preload foo.lisp
loadfile: loading foo.lisp.
loadfile: failed to load foo.lisp
-- an error. To debug this try: debugmode(true);
```
---
**[bugs:#4647] Maxima error in --preload file causes Lisp error**
**Status:** open
**Group:** None
**Labels:** command line batch error handling
**Created:** Wed Dec 10, 2025 05:48 PM UTC by Robert Dodier
**Last Updated:** Wed Dec 10, 2025 10:05 PM UTC
**Owner:** nobody
Working with a recent build (1c6a095). A Maxima error in a file loaded via `--preload` causes a Lisp error, and puts the user in the Lisp debugger.
E.g. let `foo.mac` contain just `error("Foo");`. Then:
```
sh maxima-local -l sbcl -p foo.mac
read and interpret /home/dodier/sourceforge/maxima-code/foo.mac
Foo
-- an error. To debug this try: debugmode(true);
Maxima encountered a Lisp error:
attempt to THROW to a tag that does not exist: MACSYMA-QUIT
Automatically continuing.
To enable the Lisp debugger set *debugger-hook* to nil.
debugger invoked on a SB-INT:SIMPLE-CONTROL-ERROR @52A00940 in thread
#<THREAD "main thread" RUNNING {10028F4103}>:
attempt to THROW to a tag that does not exist: RETURN-FROM-DEBUGGER
Type HELP for debugger help, or (SB-EXT:EXIT) to exit from SBCL.
restarts (invokable by number or by possibly-abbreviated name):
0: [CONTINUE] Ignore runtime option --eval "(cl-user::run)".
1: [ABORT ] Skip rest of --eval and --load options.
2: Skip to toplevel READ/EVAL/PRINT loop.
3: [EXIT ] Exit SBCL (calling #'EXIT, killing the process).
(THROW)
0]
```
I think whatever mechanism is loading `--preload` files needs to catch MACSYMA-QUIT and just go on to the next command line argument.
---
Sent from sourceforge.net because max...@li... is subscribed to https://sourceforge.net/p/maxima/bugs/
To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/maxima/admin/bugs/options. Or, if this is a mailing list, you can unsubscribe from the mailing list. |
|
From: Raymond T. <rt...@us...> - 2025-12-10 23:15:07
|
- **status**: open --> closed
- **assigned_to**: Raymond Toy
- **Comment**:
Fixed in [ce3f0a]
---
**[bugs:#4647] Maxima error in --preload file causes Lisp error**
**Status:** closed
**Group:** None
**Labels:** command line batch error handling
**Created:** Wed Dec 10, 2025 05:48 PM UTC by Robert Dodier
**Last Updated:** Wed Dec 10, 2025 10:57 PM UTC
**Owner:** Raymond Toy
Working with a recent build (1c6a095). A Maxima error in a file loaded via `--preload` causes a Lisp error, and puts the user in the Lisp debugger.
E.g. let `foo.mac` contain just `error("Foo");`. Then:
```
sh maxima-local -l sbcl -p foo.mac
read and interpret /home/dodier/sourceforge/maxima-code/foo.mac
Foo
-- an error. To debug this try: debugmode(true);
Maxima encountered a Lisp error:
attempt to THROW to a tag that does not exist: MACSYMA-QUIT
Automatically continuing.
To enable the Lisp debugger set *debugger-hook* to nil.
debugger invoked on a SB-INT:SIMPLE-CONTROL-ERROR @52A00940 in thread
#<THREAD "main thread" RUNNING {10028F4103}>:
attempt to THROW to a tag that does not exist: RETURN-FROM-DEBUGGER
Type HELP for debugger help, or (SB-EXT:EXIT) to exit from SBCL.
restarts (invokable by number or by possibly-abbreviated name):
0: [CONTINUE] Ignore runtime option --eval "(cl-user::run)".
1: [ABORT ] Skip rest of --eval and --load options.
2: Skip to toplevel READ/EVAL/PRINT loop.
3: [EXIT ] Exit SBCL (calling #'EXIT, killing the process).
(THROW)
0]
```
I think whatever mechanism is loading `--preload` files needs to catch MACSYMA-QUIT and just go on to the next command line argument.
---
Sent from sourceforge.net because max...@li... is subscribed to https://sourceforge.net/p/maxima/bugs/
To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/maxima/admin/bugs/options. Or, if this is a mailing list, you can unsubscribe from the mailing list. |