diff options
author | Jim Kingdon <jkingdon@engr.sgi.com> | 1993-08-31 15:44:44 +0000 |
---|---|---|
committer | Jim Kingdon <jkingdon@engr.sgi.com> | 1993-08-31 15:44:44 +0000 |
commit | 875fc229ff743de3b30287e8fa5b844d8ffafdfc (patch) | |
tree | 1ecd91ac4b7b3b68ffd4921a6e4ef61230f02005 /gdb/c-typeprint.c | |
parent | ac31351a627f2ab74feef9ea13adab9f363c4469 (diff) | |
download | gdb-875fc229ff743de3b30287e8fa5b844d8ffafdfc.zip gdb-875fc229ff743de3b30287e8fa5b844d8ffafdfc.tar.gz gdb-875fc229ff743de3b30287e8fa5b844d8ffafdfc.tar.bz2 |
* c-typeprint.c (c_print_type_base): Treat show = 0 just like
show < 0. The only case where we had been distinguishing is that
show = 0 used to print "struct " or "enum " instead of
"struct {...}" or "enum {...}" which seems clearly wrong.
Diffstat (limited to 'gdb/c-typeprint.c')
-rw-r--r-- | gdb/c-typeprint.c | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/gdb/c-typeprint.c b/gdb/c-typeprint.c index dffa048..31cb0c4 100644 --- a/gdb/c-typeprint.c +++ b/gdb/c-typeprint.c @@ -439,13 +439,16 @@ c_type_print_varspec_suffix (type, stream, show, passed_a_ptr, demangled_args) function value or array element), or the description of a structure or union. - SHOW nonzero means don't print this type as just its name; - show its real definition even if it has a name. - SHOW zero means print just typename or struct tag if there is one - SHOW negative means abbreviate structure elements. - SHOW is decremented for printing of structure elements. - - LEVEL is the depth to indent by. + SHOW positive means print details about the type (e.g. enum values), + and print structure elements passing SHOW - 1 for show. + SHOW zero means just print the type name or struct tag if there is one. + If there is no name, print something sensible but concise like + "struct {...}". + SHOW negative means the same things as SHOW zero. The difference is that + zero is used for printing structure elements and -1 is used for the + "whatis" command. But I don't see any need to distinguish. + + LEVEL is the number of spaces to indent by. We increase it for some recursive calls. */ void @@ -516,7 +519,7 @@ c_type_print_base (type, stream, show, level) fputs_filtered (" ", stream); } wrap_here (" "); - if (show < 0) + if (show <= 0) { /* If we just printed a tag name, no need to print anything else. */ if (TYPE_TAG_NAME (type) == NULL) @@ -716,7 +719,7 @@ c_type_print_base (type, stream, show, level) } wrap_here (" "); - if (show < 0) + if (show <= 0) { /* If we just printed a tag name, no need to print anything else. */ if (TYPE_TAG_NAME (type) == NULL) |