blokyk
daadfed9ae
libcmd/repl: allow :st argument to be relative to current stack index
...
See [lix-project/lix#1156], but basically currently the `:st <n>`
debugger command doesn't allow any negative indices, and putting a plus
sign in front of the arg doesn't change anything; thus, we can exploit
that "design space" to allow users to move between different stack
frames easily, by simply prepending their arg with a +/- sign.
The actual behavior is little more nuanced when you account for errors:
as suggested by @pennae (thanks! :), when the user inputs an offset that
would result in an invalid frame index, the debugger instead clamps it
to the closest bound (i.e. 0 for negative offsets, $maxFrame for
positive ones) and just prints a warning.
Fixes #1156
[lix-project/lix#1156 ]: https://git.lix.systems/lix-project/lix/issues/1156
Change-Id: I02a0cdb6aaebbdb0515308880a3bf9c0d2fcd25e
2026-03-20 18:22:24 +01:00
..
2026-01-21 22:50:35 +00:00
2023-12-01 12:06:43 -05:00
2026-02-26 13:11:25 +00:00
2025-02-16 14:15:36 +01:00
2024-06-01 20:31:24 +02:00
2026-02-28 12:32:45 +00:00
2026-03-17 15:48:12 -04:00
2026-03-20 18:22:24 +01:00
2026-01-16 16:52:03 +00:00
2024-10-30 15:12:35 +04:00
2023-12-01 12:06:43 -05:00
2025-01-23 17:57:52 -08:00
2025-10-30 15:10:10 +01:00
2023-12-01 12:06:43 -05:00
2025-10-13 11:26:49 +00:00
2023-12-01 12:06:43 -05:00
2025-10-13 11:26:49 +00:00
2023-12-01 12:06:43 -05:00
2023-12-01 12:06:43 -05:00
2025-07-22 15:32:25 +02:00
2025-07-07 11:44:17 +00:00
2025-07-07 11:44:17 +00:00
2025-11-18 19:52:17 +01:00
2026-01-22 15:23:38 +00:00
2023-12-01 12:06:43 -05:00
2026-01-09 18:13:29 +01:00
2024-05-03 16:26:16 +02:00
2024-06-01 20:31:24 +02:00
2025-07-07 11:44:17 +00:00
2025-07-07 11:44:17 +00:00
2023-12-01 12:06:43 -05:00
2023-12-01 12:06:43 -05:00
2026-01-22 15:23:38 +00:00
2023-12-01 12:06:43 -05:00
2024-03-04 07:15:08 +01:00
2025-05-29 15:25:12 +02:00
2024-06-30 19:28:14 +02:00
2023-12-01 12:06:43 -05:00
2025-07-07 11:44:17 +00:00
2023-12-01 12:06:43 -05:00
2024-05-08 19:31:43 +00:00
2024-05-08 19:31:43 +00:00
2024-03-07 10:46:47 +01:00
2026-03-02 13:14:42 +00:00
2025-12-13 23:15:18 +03:00
2025-05-28 22:24:23 +00:00
2023-12-01 12:06:43 -05:00
2024-08-17 15:48:10 +00:00
2023-12-01 12:06:43 -05:00
2025-03-21 13:19:15 -07:00
2023-12-01 12:06:43 -05:00
2025-11-21 17:02:35 +00:00
2025-02-27 00:26:48 +01:00
2023-12-01 12:06:43 -05:00
2023-12-01 12:06:43 -05:00
2025-05-08 20:23:12 +02:00
2025-12-16 08:31:50 +00:00
2024-06-27 22:44:16 -07:00
2025-06-01 18:59:23 +02:00
2023-12-01 12:06:43 -05:00
2023-12-01 12:06:43 -05:00
2023-12-01 12:06:43 -05:00
2023-12-01 12:06:43 -05:00
2024-07-19 20:55:55 +00:00
2024-04-25 23:24:21 -04:00
2024-04-25 23:24:21 -04:00
2025-11-20 11:53:18 +00:00
2024-03-07 10:46:47 +01:00
2024-01-11 07:21:16 -05:00
2023-12-01 12:06:43 -05:00
2023-12-01 12:06:43 -05:00
2025-05-11 17:26:55 +02:00
2026-01-21 22:50:35 +00:00
2024-06-24 14:00:43 -07:00
2024-04-08 15:40:12 -07:00
2025-07-27 19:42:37 +00:00
2025-02-16 14:15:36 +01:00
2026-03-16 16:52:14 +00:00
2024-12-10 15:43:31 -08:00
2026-01-21 22:50:35 +00:00
2026-01-21 22:50:35 +00:00
2023-12-01 12:06:43 -05:00
2023-12-01 12:06:43 -05:00
2025-07-25 21:04:16 +02:00
2025-09-12 23:22:11 +02:00
2023-12-01 12:06:43 -05:00
2023-12-01 12:06:43 -05:00
2023-12-01 12:06:43 -05:00
2024-03-29 22:57:40 -07:00
2023-12-01 12:06:43 -05:00
2024-07-09 13:55:05 +00:00
2024-03-07 03:34:00 +01:00
2024-03-07 03:34:00 +01:00
2024-03-07 03:34:00 +01:00
2023-12-01 12:06:43 -05:00
2023-12-01 12:06:43 -05:00
2023-12-01 12:06:43 -05:00
2025-11-21 17:02:35 +00:00
2024-05-12 23:04:21 +02:00
2025-07-22 10:39:32 +00:00
2025-02-17 16:05:06 -08:00
2024-06-24 14:00:43 -07:00
2024-03-29 22:57:40 -07:00
2023-12-01 12:06:43 -05:00
2023-12-01 12:06:43 -05:00
2025-02-27 00:26:48 +01:00
2025-02-27 00:26:48 +01:00
2023-12-01 12:06:43 -05:00
2024-08-23 17:49:15 -07:00
2025-07-22 10:39:32 +00:00
2025-12-01 14:25:47 +00:00
2023-12-01 12:06:43 -05:00
2025-09-12 23:22:11 +02:00
2023-12-01 12:06:43 -05:00
2024-11-28 18:15:52 +01:00
2023-12-01 12:06:43 -05:00
2023-12-01 12:06:43 -05:00
2024-03-04 07:50:55 +01:00
2025-03-07 07:45:08 -05:00
2023-12-01 12:06:43 -05:00
2023-12-01 12:06:43 -05:00
2024-03-29 22:57:40 -07:00
2023-12-01 12:06:43 -05:00
2025-07-22 10:39:32 +00:00
2023-12-01 12:06:43 -05:00
2025-07-22 10:39:32 +00:00
2023-12-01 12:06:43 -05:00
2026-01-28 15:01:13 +00:00
2024-04-11 15:43:58 +03:00
2023-12-01 12:06:43 -05:00
2023-12-01 12:06:43 -05:00
2024-03-14 14:30:38 -07:00
2023-12-01 12:06:43 -05:00
2026-01-09 12:28:19 +01:00
2023-12-01 12:06:43 -05:00
2025-05-11 01:07:18 +02:00
2026-03-05 13:39:12 +00:00