From: Doug Evans Date: Tue, 19 Oct 2010 04:22:20 +0000 (+0000) Subject: * c-typeprint.c (c_type_print_base, case TYPE_CODE_TYPEDEF): Verify X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=8c540a24cf3403ee2d92d495bde7c8ac472da1d0;p=binutils-gdb.git * c-typeprint.c (c_type_print_base, case TYPE_CODE_TYPEDEF): Verify assumptions of when this case happens. Print "". --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index a98fde1ddd0..bff8559eeb4 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2010-10-18 Doug Evans + + * c-typeprint.c (c_type_print_base, case TYPE_CODE_TYPEDEF): Verify + assumptions of when this case happens. Print "". + 2010-10-18 Tom Tromey * valprint.c (val_print_string): Pass 'encoding' to diff --git a/gdb/c-typeprint.c b/gdb/c-typeprint.c index 0fd077b36fc..87f7b0d3b67 100644 --- a/gdb/c-typeprint.c +++ b/gdb/c-typeprint.c @@ -707,6 +707,13 @@ c_type_print_base (struct type *type, struct ui_file *stream, int show, switch (TYPE_CODE (type)) { case TYPE_CODE_TYPEDEF: + /* If we get here, the typedef doesn't have a name, and we couldn't + resolve TYPE_TARGET_TYPE. Not much we can do. */ + gdb_assert (TYPE_NAME (type) == NULL); + gdb_assert (TYPE_TARGET_TYPE (type) == NULL); + fprintf_filtered (stream, _("")); + break; + case TYPE_CODE_ARRAY: case TYPE_CODE_PTR: case TYPE_CODE_MEMBERPTR: