aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog67
-rw-r--r--gdb/buildsym.c32
-rw-r--r--gdb/ch-lang.c15
-rw-r--r--gdb/ch-valprint.c26
-rw-r--r--gdb/dcache.c22
-rw-r--r--gdb/elfread.c6
-rw-r--r--gdb/f-lang.c2
-rw-r--r--gdb/f-typeprint.c6
-rw-r--r--gdb/f-valprint.c1
-rw-r--r--gdb/minsyms.c5
-rw-r--r--gdb/regex.c13
-rw-r--r--gdb/remote-pa.c3
-rw-r--r--gdb/saber.suppress2
-rw-r--r--gdb/ser-unix.c2
-rw-r--r--gdb/top.c2
15 files changed, 178 insertions, 26 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 281d44e8624..230cdb8a110 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,70 @@
+Mon Jul 17 21:35:18 1995 Fred Fish <fnf@cygnus.com>
+
+ * dache.c (struct dcache_block): Change data member from unsigned char
+ to char, since everything passed in and out of dcache is char or casted
+ to appropriate type anyway.
+ (dcache_alloc): Move assignment of db out of test and combine separate
+ tests into if-else.
+ (dcache_peek_byte): Change ptr from unsigned char* to char*.
+ (dcache_peek_byte): Remove now unnecessary cast in read_memory call.
+ (dcache_peek): Change cast of incoming data arg.
+ (dcache_poke): Change cast of addr of incoming data arg.
+ (dcache_info): Mask data passed to printf_filtered to lsbyte only.
+ (dcache_info): Change printf_filtered arg from "% 2x" to " %2x".
+ * target.c (debug_to_thread_alive): Change return type to int and
+ return zero, for type compatibility with other *_thread_alive funcs.
+ (cleanup_target): Change cast of ignore function to match type of the
+ to_thread_alive member.
+ * defs.h (error_hook): Add ATTR_NORETURN.
+ * defs.h (NORETURN, ATTR_NORETURN): Switch from volatile to
+ __attribute__ method with gcc 2.7, to avoid gcc 2.6.3 bug.
+ * remote.c (remote_wait): Cast first arg to strtol, strchr, and strncmp
+ to "const char *" from "unsigned char *".
+ (remote_wait): Cast arg to putpkt and strcpy from "unsigned char *" to
+ "char *".
+ (remote_wait): Change printf format for long arg from "%d" to "%ld".
+ (getpkt): Remove unused variable "bp".
+ (remote_fetch_word, remote_store_word): Ifdef out apparently unused
+ functions.
+ * breakpoint.c (watchpoint_check): Removed unused variables
+ "saved_level" and "saved_frame".
+ * valops.c (value_arg_coerce): Add other enum TYPE_CODE_* and
+ default cases to switch for completeness.
+ * infrun.c (wait_for_inferior): Enclose "have_waited" label
+ in #ifdef that matches the one in which it is referenced.
+ * ser-unix.c (hardwire_noflush_set_tty_state): Enclose otherwise
+ unused variable "state" in #ifdef that matches one in which it is
+ referenced.
+ * eval.c (evaluate_subexp_standard): Remove unused variable "var".
+ * eval.c (evaluate_subexp_standard): Remove unused variable "tmp_symbol".
+ * valarith.c (value_subscript): Remove unused variable "lowerbound",
+ which is redeclared in a nested scope prior to use.
+ * printcmd.c (print_frame_nameless_args): Use "%ld" to print long
+ arg, not "%d".
+ * {mem-break.c, remote-pa.c, remote.c, saber.suppress}:
+ Remove unused static var "check_break_insn_size".
+ * buildsym.c (finish_block): Add other enum LOC_* and default
+ cases to switch for completeness.
+ ch-lang.c (type_lower_upper): Removed unused label "retry".
+ Add other enum TYPE_* and default cases to switch for completeness.
+ * f-typeprint.c (f_type_print_args): Ifdef out unused function
+ that may be used someday when Fortran support is complete.
+ * ch-valprint.c (chill_print_type_scalar): Add other enum
+ TYPE_* and default cases to switch for completeness.
+ (chill_val_print): Remove unused local var "high_bound" that
+ is redeclared in a nested scope prior to use.
+ (chill_var_print): Use "%ld" to print long arg, not "%d".
+ * regex.c (re_compile_fastmap, re_match_2): Add remaining enum types
+ and default to switches for completeness.
+ * minsyms.c (lookup_minimal_symbol_text): Delete unused variable
+ "trampoline_symbol".
+ (prim_record_minimal_symbol_and_info): Return NULL rather than trash.
+ * elfread.c (elf_symtab_read): Don't dereference NULL returns from
+ record_minimal_symbol_and_info.
+ * f-lang.c (saved_function_list_end): Ifdef out unused variable
+ that may be used someday.
+ * f-valprint.c (f_val_print): Remove unused local variable "straddr".
+
Mon Jul 17 13:08:00 1995 Ian Lance Taylor <ian@cygnus.com>
* stabsread.h (struct stab_section_list): Define.
diff --git a/gdb/buildsym.c b/gdb/buildsym.c
index d62d2ee2162..fa31e6243d4 100644
--- a/gdb/buildsym.c
+++ b/gdb/buildsym.c
@@ -247,6 +247,22 @@ finish_block (symbol, listhead, old_blocks, start, end, objfile)
case LOC_REGPARM:
case LOC_REGPARM_ADDR:
nparams++;
+ break;
+ case LOC_UNDEF:
+ case LOC_CONST:
+ case LOC_STATIC:
+ case LOC_REGISTER:
+ case LOC_LOCAL:
+ case LOC_TYPEDEF:
+ case LOC_LABEL:
+ case LOC_BLOCK:
+ case LOC_CONST_BYTES:
+ case LOC_LOCAL_ARG:
+ case LOC_BASEREG:
+ case LOC_BASEREG_ARG:
+ case LOC_OPTIMIZED_OUT:
+ default:
+ break;
}
}
if (nparams > 0)
@@ -266,6 +282,22 @@ finish_block (symbol, listhead, old_blocks, start, end, objfile)
case LOC_REGPARM_ADDR:
TYPE_FIELD_TYPE (ftype, iparams) = SYMBOL_TYPE (sym);
iparams++;
+ break;
+ case LOC_UNDEF:
+ case LOC_CONST:
+ case LOC_STATIC:
+ case LOC_REGISTER:
+ case LOC_LOCAL:
+ case LOC_TYPEDEF:
+ case LOC_LABEL:
+ case LOC_BLOCK:
+ case LOC_CONST_BYTES:
+ case LOC_LOCAL_ARG:
+ case LOC_BASEREG:
+ case LOC_BASEREG_ARG:
+ case LOC_OPTIMIZED_OUT:
+ default:
+ break;
}
}
}
diff --git a/gdb/ch-lang.c b/gdb/ch-lang.c
index e90e4a7bfc5..e0678268d5c 100644
--- a/gdb/ch-lang.c
+++ b/gdb/ch-lang.c
@@ -305,7 +305,6 @@ type_lower_upper (op, type, result_type)
{
LONGEST tmp;
*result_type = builtin_type_int;
- retry:
switch (TYPE_CODE (type))
{
case TYPE_CODE_STRUCT:
@@ -342,6 +341,20 @@ type_lower_upper (op, type, result_type)
return op == UNOP_LOWER ? 0 : tmp - (LONGEST) 1;
tmp = tmp >> 1;
return op == UNOP_LOWER ? -tmp : (tmp - 1);
+ case TYPE_CODE_UNDEF:
+ case TYPE_CODE_PTR:
+ case TYPE_CODE_UNION:
+ case TYPE_CODE_FUNC:
+ case TYPE_CODE_FLT:
+ case TYPE_CODE_VOID:
+ case TYPE_CODE_SET:
+ case TYPE_CODE_ERROR:
+ case TYPE_CODE_MEMBER:
+ case TYPE_CODE_METHOD:
+ case TYPE_CODE_REF:
+ case TYPE_CODE_COMPLEX:
+ default:
+ break;
}
error ("unknown mode for LOWER/UPPER builtin");
}
diff --git a/gdb/ch-valprint.c b/gdb/ch-valprint.c
index 31eeb1289a1..a96bd704bb6 100644
--- a/gdb/ch-valprint.c
+++ b/gdb/ch-valprint.c
@@ -57,6 +57,29 @@ chill_print_type_scalar (type, val, stream)
chill_print_type_scalar (TYPE_TARGET_TYPE (type), val, stream);
return;
}
+ break;
+ case TYPE_CODE_UNDEF:
+ case TYPE_CODE_PTR:
+ case TYPE_CODE_ARRAY:
+ case TYPE_CODE_STRUCT:
+ case TYPE_CODE_UNION:
+ case TYPE_CODE_ENUM:
+ case TYPE_CODE_FUNC:
+ case TYPE_CODE_INT:
+ case TYPE_CODE_FLT:
+ case TYPE_CODE_VOID:
+ case TYPE_CODE_SET:
+ case TYPE_CODE_STRING:
+ case TYPE_CODE_BITSTRING:
+ case TYPE_CODE_ERROR:
+ case TYPE_CODE_MEMBER:
+ case TYPE_CODE_METHOD:
+ case TYPE_CODE_REF:
+ case TYPE_CODE_CHAR:
+ case TYPE_CODE_BOOL:
+ case TYPE_CODE_COMPLEX:
+ default:
+ break;
}
print_type_scalar (type, val, stream);
}
@@ -90,7 +113,6 @@ chill_val_print_array_elements (type, valaddr, address, stream,
/* Number of repetitions we have detected so far. */
unsigned int reps;
LONGEST low_bound = TYPE_FIELD_BITPOS (range_type, 0);
- LONGEST high_bound = TYPE_FIELD_BITPOS (range_type, 1);
elttype = TYPE_TARGET_TYPE (type);
eltlen = TYPE_LENGTH (elttype);
@@ -379,7 +401,7 @@ chill_val_print (type, valaddr, address, stream, format, deref_ref, recurse,
if (length > TYPE_LENGTH (type))
{
fprintf_filtered (stream,
- "<dynamic length %d > static length %d>",
+ "<dynamic length %ld > static length %d>",
length, TYPE_LENGTH (type));
}
LA_PRINT_STRING (stream, data_addr, length, 0);
diff --git a/gdb/dcache.c b/gdb/dcache.c
index 61e4ed0e9b7..4e9f960a43b 100644
--- a/gdb/dcache.c
+++ b/gdb/dcache.c
@@ -112,7 +112,7 @@ struct dcache_block
{
struct dcache_block *p; /* next in list */
unsigned int addr; /* Address for which data is recorded. */
- unsigned char data[LINE_SIZE]; /* bytes at given address */
+ char data[LINE_SIZE]; /* bytes at given address */
unsigned char state[LINE_SIZE]; /* what state the data is in */
/* whether anything in state is dirty - used to speed up the
@@ -272,14 +272,14 @@ dcache_alloc (dcache)
abort ();
/* Take something from the free list */
- if (db = dcache->free_head)
+ db = dcache->free_head;
+ if (db)
{
dcache->free_head = db->p;
}
-
- if (!db)
+ else
{
- /* Nothing left on free list, so grab on from the valid list */
+ /* Nothing left on free list, so grab one from the valid list */
db = dcache->valid_head;
dcache->valid_head = db->p;
@@ -306,7 +306,7 @@ int
dcache_peek_byte (dcache, addr, ptr)
DCACHE *dcache;
CORE_ADDR addr;
- unsigned char *ptr;
+ char *ptr;
{
register struct dcache_block *db = dcache_hit (dcache, addr);
int ok=1;
@@ -327,7 +327,7 @@ dcache_peek_byte (dcache, addr, ptr)
int try =
(*dcache->read_memory)
(db->addr + done,
- (unsigned char *) db->data + done,
+ db->data + done,
LINE_SIZE - done);
if (try == 0)
return 0;
@@ -353,7 +353,7 @@ dcache_peek (dcache, addr, data)
CORE_ADDR addr;
int *data;
{
- unsigned char *dp = (unsigned char *) data;
+ char *dp = (char *) data;
int i;
for (i = 0; i < sizeof (int); i++)
{
@@ -431,7 +431,7 @@ dcache_poke (dcache, addr, data)
CORE_ADDR addr;
int data;
{
- unsigned char *dp = (unsigned char *) (&data);
+ char *dp = (char *) (&data);
int i;
for (i = 0; i < sizeof (int); i++)
{
@@ -533,11 +533,11 @@ dcache_info (exp, tty)
p->addr, p->refs);
for (j = 0; j < LINE_SIZE; j++)
- printf_filtered ("%02x", p->data[j]);
+ printf_filtered ("%02x", p->data[j] & 0xFF);
printf_filtered ("\n");
for (j = 0; j < LINE_SIZE; j++)
- printf_filtered ("% 2x", p->state[j]);
+ printf_filtered (" %2x", p->state[j]);
printf_filtered ("\n");
}
}
diff --git a/gdb/elfread.c b/gdb/elfread.c
index 0425c01ce42..10269bb58a1 100644
--- a/gdb/elfread.c
+++ b/gdb/elfread.c
@@ -326,7 +326,8 @@ elf_symtab_read (abfd, addr, objfile, dynamic)
((char *) sym -> name, symaddr,
mst_solib_trampoline, NULL, objfile);
#ifdef SOFUN_ADDRESS_MAYBE_MISSING
- msym->filename = filesymname;
+ if (msym != NULL)
+ msym->filename = filesymname;
#endif
continue;
}
@@ -516,7 +517,8 @@ elf_symtab_read (abfd, addr, objfile, dynamic)
((char *) sym -> name, symaddr,
ms_type, (PTR) size, objfile);
#ifdef SOFUN_ADDRESS_MAYBE_MISSING
- msym->filename = filesymname;
+ if (msym != NULL)
+ msym->filename = filesymname;
#endif
}
}
diff --git a/gdb/f-lang.c b/gdb/f-lang.c
index b296a2002f7..04a446f41ef 100644
--- a/gdb/f-lang.c
+++ b/gdb/f-lang.c
@@ -935,7 +935,9 @@ get_bf_for_fcn (the_function)
}
static SAVED_FUNCTION_PTR saved_function_list=NULL;
+#if 0 /* Currently unused */
static SAVED_FUNCTION_PTR saved_function_list_end=NULL;
+#endif
void clear_function_list()
{
diff --git a/gdb/f-typeprint.c b/gdb/f-typeprint.c
index 8775b379adc..8b1e9fe88e5 100644
--- a/gdb/f-typeprint.c
+++ b/gdb/f-typeprint.c
@@ -39,7 +39,9 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
#include <string.h>
#include <errno.h>
+#if 0 /* Currently unused */
static void f_type_print_args PARAMS ((struct type *, FILE *));
+#endif
static void f_type_print_varspec_suffix PARAMS ((struct type *, FILE *,
int, int, int));
@@ -150,6 +152,8 @@ f_type_print_varspec_prefix (type, stream, show, passed_a_ptr)
}
}
+#if 0 /* Currently unused */
+
static void
f_type_print_args (type, stream)
struct type *type;
@@ -184,6 +188,8 @@ f_type_print_args (type, stream)
fprintf_filtered (stream, ")");
}
+#endif /* 0 */
+
/* Print any array sizes, function arguments or close parentheses
needed after the variable name (to describe its type).
Args work like c_type_print_varspec_prefix. */
diff --git a/gdb/f-valprint.c b/gdb/f-valprint.c
index 5c936e8d84a..06beea6c510 100644
--- a/gdb/f-valprint.c
+++ b/gdb/f-valprint.c
@@ -374,7 +374,6 @@ f_val_print (type, valaddr, address, stream, format, deref_ref, recurse,
register unsigned int i = 0; /* Number of characters printed */
struct type *elttype;
LONGEST val;
- char *straddr;
CORE_ADDR addr;
switch (TYPE_CODE (type))
diff --git a/gdb/minsyms.c b/gdb/minsyms.c
index 75281ce49cd..354b8ff319d 100644
--- a/gdb/minsyms.c
+++ b/gdb/minsyms.c
@@ -194,7 +194,6 @@ lookup_minimal_symbol_text (name, sfile, objf)
struct minimal_symbol *msymbol;
struct minimal_symbol *found_symbol = NULL;
struct minimal_symbol *found_file_symbol = NULL;
- struct minimal_symbol *trampoline_symbol = NULL;
#ifdef SOFUN_ADDRESS_MAYBE_MISSING
if (sfile != NULL)
@@ -466,14 +465,14 @@ prim_record_minimal_symbol_and_info (name, address, ms_type, info, section,
if (name[0] == 'g'
&& (strcmp (name, GCC_COMPILED_FLAG_SYMBOL) == 0
|| strcmp (name, GCC2_COMPILED_FLAG_SYMBOL) == 0))
- return;
+ return (NULL);
{
const char *tempstring = name;
if (tempstring[0] == get_symbol_leading_char (objfile->obfd))
++tempstring;
if (STREQN (tempstring, "__gnu_compiled", 14))
- return;
+ return (NULL);
}
}
diff --git a/gdb/regex.c b/gdb/regex.c
index 3f30284a639..fc31eba9a60 100644
--- a/gdb/regex.c
+++ b/gdb/regex.c
@@ -876,6 +876,11 @@ re_compile_fastmap (bufp)
fastmap[j] = 1;
}
break;
+ case unused:
+ case syntaxspec:
+ case notsyntaxspec:
+ default:
+ break;
}
/* Get here means we have successfully found the possible starting characters
@@ -1529,6 +1534,14 @@ re_match_2 (pbufp, string1, size1, string2, size2, pos, regs, mstop)
while (--mcnt);
}
break;
+ case unused:
+ case before_dot:
+ case at_dot:
+ case after_dot:
+ case syntaxspec:
+ case notsyntaxspec:
+ default:
+ break;
}
continue; /* Successfully matched one pattern command; keep matching */
diff --git a/gdb/remote-pa.c b/gdb/remote-pa.c
index d131b47df71..f12b8baa586 100644
--- a/gdb/remote-pa.c
+++ b/gdb/remote-pa.c
@@ -1425,9 +1425,6 @@ remote_mourn ()
than other targets. */
static unsigned char break_insn[] = REMOTE_BREAKPOINT;
-/* Check that it fits in BREAKPOINT_MAX bytes. */
-static unsigned char check_break_insn_size[BREAKPOINT_MAX] = REMOTE_BREAKPOINT;
-
#else /* No REMOTE_BREAKPOINT. */
/* Same old breakpoint instruction. This code does nothing different
diff --git a/gdb/saber.suppress b/gdb/saber.suppress
index 2ad0c3885ab..6dda1c5f2da 100644
--- a/gdb/saber.suppress
+++ b/gdb/saber.suppress
@@ -364,8 +364,6 @@ suppress 591 in print_scalar_formatted
/* Unused automatic variable */
suppress 592 on rcsid
/* Unused static */
-suppress 592 on check_break_insn_size
-/* Unused static */
suppress 594 in call_function_by_hand
/* Set but not used */
suppress 594 in record_latest_value
diff --git a/gdb/ser-unix.c b/gdb/ser-unix.c
index 55d2a02a837..c124f6d9c7f 100644
--- a/gdb/ser-unix.c
+++ b/gdb/ser-unix.c
@@ -194,7 +194,9 @@ hardwire_noflush_set_tty_state (scb, new_ttystate, old_ttystate)
serial_ttystate old_ttystate;
{
struct hardwire_ttystate new_state;
+#ifdef HAVE_SGTTY
struct hardwire_ttystate *state = (struct hardwire_ttystate *) old_ttystate;
+#endif
new_state = *(struct hardwire_ttystate *)new_ttystate;
diff --git a/gdb/top.c b/gdb/top.c
index 5fcebc30bd3..47d91003d57 100644
--- a/gdb/top.c
+++ b/gdb/top.c
@@ -422,7 +422,7 @@ void (*call_command_hook) PARAMS ((struct cmd_list_element *c, char *cmd,
/* Takes control from error (). Typically used to prevent longjmps out of the
middle of the GUI. Usually used in conjunction with a catch routine. */
-NORETURN void (*error_hook) PARAMS (());
+NORETURN void (*error_hook) PARAMS (()) ATTR_NORETURN;
/* Where to go for return_to_top_level (RETURN_ERROR). */