mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2025-03-07 13:39:43 +08:00
This patch keeps the Scheme side of lazy string handling in sync with the python size, bringing over fixes for PRs python/17728, python/18439, python/18779. gdb/ChangeLog: * guile/scm-lazy-string.c (lazy_string_smob): Clarify use of LENGTH member. Change type of TYPE member to SCM. All uses updated. (lsscm_make_lazy_string_smob): Add assert. (lsscm_make_lazy_string): Flag bad length values. (lsscm_elt_type): New function. (gdbscm_lazy_string_to_value): Rewrite to use lsscm_safe_lazy_string_to_value. (lsscm_safe_lazy_string_to_value): Fix handling of TYPE_CODE_PTR. * guile/scm-value.c (gdbscm_value_to_lazy_string): Flag bad length values. Fix TYPE_CODE_PTR. Handle TYPE_CODE_ARRAY. Handle typedefs in incoming type. * guile/guile-internal.h (tyscm_scm_to_type): Declare. * guile/scm-type.c (tyscm_scm_to_type): New function. gdb/testsuite/ChangeLog: * gdb.guile/scm-value.c (main) Delete locals sptr, sn. * gdb.guile/scm-lazy-string.c: New file. * gdb.guile/scm-value.exp: Move lazy string tests to ... * gdb.guile/scm-lazy-string.exp: ... here, new file. Add more tests for pointer, array, typedef lazy strings. |
||
---|---|---|
.. | ||
guile.exp | ||
scm-arch.c | ||
scm-arch.exp | ||
scm-block.c | ||
scm-block.exp | ||
scm-breakpoint.c | ||
scm-breakpoint.exp | ||
scm-cmd.c | ||
scm-cmd.exp | ||
scm-disasm.c | ||
scm-disasm.exp | ||
scm-equal.c | ||
scm-equal.exp | ||
scm-error-1.scm | ||
scm-error-2.scm | ||
scm-error.exp | ||
scm-frame-args.c | ||
scm-frame-args.exp | ||
scm-frame-args.scm | ||
scm-frame-inline.c | ||
scm-frame-inline.exp | ||
scm-frame.c | ||
scm-frame.exp | ||
scm-gsmob.exp | ||
scm-iterator.c | ||
scm-iterator.exp | ||
scm-lazy-string.c | ||
scm-lazy-string.exp | ||
scm-math.c | ||
scm-math.exp | ||
scm-objfile-script-gdb.in | ||
scm-objfile-script.c | ||
scm-objfile-script.exp | ||
scm-objfile.c | ||
scm-objfile.exp | ||
scm-parameter.exp | ||
scm-ports.c | ||
scm-ports.exp | ||
scm-pretty-print.c | ||
scm-pretty-print.exp | ||
scm-pretty-print.scm | ||
scm-progspace.c | ||
scm-progspace.exp | ||
scm-section-script.c | ||
scm-section-script.exp | ||
scm-section-script.scm | ||
scm-symbol.c | ||
scm-symbol.exp | ||
scm-symtab-2.c | ||
scm-symtab.c | ||
scm-symtab.exp | ||
scm-type.c | ||
scm-type.exp | ||
scm-value-cc.cc | ||
scm-value-cc.exp | ||
scm-value.c | ||
scm-value.exp | ||
source2.scm | ||
types-module.cc | ||
types-module.exp |