diff options
author | Neil Jerram <neil@ossau.uklinux.net> | 2009-09-17 00:14:16 +0100 |
---|---|---|
committer | Neil Jerram <neil@ossau.uklinux.net> | 2009-09-17 00:19:47 +0100 |
commit | ba20f78a6c91e0535d205f7f5291d860c1bcbc27 (patch) | |
tree | 86df1d3f6e5b5fa88d57e96660ef355c1db20a17 /libguile/programs.h | |
parent | 931c82f5b02213c8e9e1cca2b21672b809970e18 (diff) | |
download | guile-ba20f78a6c91e0535d205f7f5291d860c1bcbc27.tar.gz |
Fix omission of VM frames from backtrace
From the time when a #<program> was a SMOB, really_make_boot_program
in vm.c was still using SCM_SET_SMOB_FLAGS to set the
SCM_F_PROGRAM_IS_BOOT flag - which meant that it was setting flag
1<<32 :-) which obviously was then missed by the SCM_PROGRAM_IS_BOOT
calls in stacks.c.
* libguile/programs.h (SCM_F_PROGRAM_IS_BOOT): Use a less significant
bit for this flag, now that programs use a tc7 type.
* libguile/vm.c (really_make_boot_program): Don't use
SCM_SET_SMOB_FLAGS, now that programs aren't SMOBs.
Diffstat (limited to 'libguile/programs.h')
-rw-r--r-- | libguile/programs.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/libguile/programs.h b/libguile/programs.h index d52631fbb..c846c1b8c 100644 --- a/libguile/programs.h +++ b/libguile/programs.h @@ -26,7 +26,7 @@ * Programs */ -#define SCM_F_PROGRAM_IS_BOOT (1<<16) +#define SCM_F_PROGRAM_IS_BOOT 0x100 #define SCM_PROGRAM_P(x) (!SCM_IMP (x) && SCM_TYP7(x) == scm_tc7_program) #define SCM_PROGRAM_OBJCODE(x) (SCM_CELL_OBJECT_1 (x)) |