"Find definition" sometimes fails from core executable in some on 2.2.10
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
SBCL |
New
|
Undecided
|
Unassigned |
Bug Description
This is a bit of an odd one because I don't have a good recipe to share.
When I dump a core executable which includes a specific package `ambrevar/shell`, then load the said core executable and input the following
```
(SB-INTROSPECT:
```
it fails with
```
Invalid index 8 for (SIMPLE-ARRAY (UNSIGNED-BYTE 16)
Backtrace for: #<SB-THREAD:THREAD "main thread" RUNNING {10038A8003}>
0: (SB-DEBUG:
1: (SB-DEBUG::RUN-HOOK *INVOKE-
2: (INVOKE-DEBUGGER #<SB-KERNEL:
3: (ERROR SB-KERNEL:
4: (ELT #(0 336 364 580 603 1338 1360) 8)
5: (SB-INTROSPECT:
6: (SB-INTROSPECT:
7: (SB-INT:
8: (EVAL (SB-INTROSPECT:
9: (INTERACTIVE-EVAL (SB-INTROSPECT:
10: (SB-IMPL::REPL-FUN NIL)
11: ((LAMBDA NIL :IN SB-IMPL:
12: (SB-IMPL:
13: (SB-IMPL:
14: (SB-IMPL:
15: ((FLET SB-UNIX::BODY :IN SB-IMPL:
16: ((FLET "WITHOUT-
17: (SB-IMPL:
```
It works for symbols exported before this one in the file, but all symbols exported after this s-exp index 8 fail in a similar fashion. It's as if the source definition information was recorded shorted than it really is when dumping the image.
If I reload the system it works again.
Other packages (as far as I've tried) don't suffer from this issue, which makes this a bit hard to reproduce.
The problem did not occur on SBCL 2.2.6.