1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-08 05:00:17 +02:00
guile/module/language
Andy Wingo 51bc69dd1c Fix bytevector mutators to correctly check for mutability
Previously, bytevectors that were serialized into binaries were actually
mutable by compiled bytevector-u8-set! et al.

* libguile/bytevectors.h (SCM_F_BYTEVECTOR_IMMUTABLE): Renumber to 0x80,
as for immutable vectors.
(SCM_BYTEVECTOR_CONTIGUOUS_P): Just use SCM_CELL_TYPE.
(SCM_BYTEVECTOR_FLAGS): Remove unused accessor.
* module/language/tree-il/compile-cps.scm (bytevector-set-converter):
Emit mutable-bytevector? instead of bytevector?.
* module/system/vm/assembler.scm (link-data): Update immutable flag.
* module/language/cps/compile-bytecode.scm:
* module/language/cps/effects-analysis.scm:
* module/language/cps/type-fold.scm:
* module/language/cps/types.scm:
* module/system/base/types/internal.scm: Update for immutable-bytevector
predicates.
2025-05-30 16:48:26 +02:00
..
brainfuck Add compiler chooser implementation; fix bugs with previous commit 2020-05-08 22:56:37 +02:00
bytecode linker: Do not store entire ELF in memory when writing to a file. 2023-01-17 17:49:05 +01:00
cps Fix bytevector mutators to correctly check for mutability 2025-05-30 16:48:26 +02:00
ecmascript Move weak table implementation to Scheme 2025-05-13 14:57:31 +02:00
elisp Move source properties out to a module 2025-05-12 16:29:04 +02:00
scheme Read-in-scheme replaces boot "read" definition 2021-03-03 17:08:55 +01:00
tree-il Fix bytevector mutators to correctly check for mutability 2025-05-30 16:48:26 +02:00
value Add 'for-humans?' flag to <language> specifications. 2013-01-27 10:16:40 -05:00
wisp Add language/wisp, Wisp tests, and SRFI-119 documentation 2024-06-01 11:50:16 +02:00
bytecode.scm Remove all deprecated code from Scheme files 2025-05-05 12:33:37 +02:00
cps.scm Move source properties out to a module 2025-05-12 16:29:04 +02:00
tree-il.scm Move source properties out to a module 2025-05-12 16:29:04 +02:00
wisp.scm Move source properties out to a module 2025-05-12 16:29:04 +02:00