aboutsummaryrefslogtreecommitdiff
path: root/gdb/regex.c
diff options
context:
space:
mode:
authorPeter Schauer <Peter.Schauer@mytum.de>1994-08-07 13:33:45 +0000
committerPeter Schauer <Peter.Schauer@mytum.de>1994-08-07 13:33:45 +0000
commit0d98155c9484f354c4e65e7c39faa3d751ce2599 (patch)
treeaaca8b9e8002211cca048e062714d99792cd83d5 /gdb/regex.c
parentf20860cdbc5488e3e481c0bf12c9f78d92e6db29 (diff)
downloadgdb-0d98155c9484f354c4e65e7c39faa3d751ce2599.zip
gdb-0d98155c9484f354c4e65e7c39faa3d751ce2599.tar.gz
gdb-0d98155c9484f354c4e65e7c39faa3d751ce2599.tar.bz2
* config/mips/tm-irix5.h (IN_SIGTRAMP): Redefine for Irix 5,
Irix 5 has a standard _sigtramp signal handler. * irix5-nat.c (solib_add): Get rid of sigtramp_address handling, it is not needed for a standard _sigtramp signal handler. Add shared library sections to the section table of the target before adding the symbols. * mips-tdep.c (mips_skip_prologue): Do not skip load immediate instructions that do not prepare a stack adjustment. * regex.c (SIGN_EXTEND_CHAR): Update to emacs-19.25 definition, which does the right thing on machines where `char' is unsigned.
Diffstat (limited to 'gdb/regex.c')
-rw-r--r--gdb/regex.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/gdb/regex.c b/gdb/regex.c
index 9b6dc5b..3f30284 100644
--- a/gdb/regex.c
+++ b/gdb/regex.c
@@ -93,8 +93,16 @@ init_syntax_once ()
#define BYTEWIDTH 8
-#ifndef SIGN_EXTEND_CHAR
-#define SIGN_EXTEND_CHAR(x) (x)
+/* We remove any previous definition of `SIGN_EXTEND_CHAR',
+ since ours (we hope) works properly with all combinations of
+ machines, compilers, `char' and `unsigned char' argument types.
+ (Per Bothner suggested the basic approach.) */
+#undef SIGN_EXTEND_CHAR
+#if __STDC__
+#define SIGN_EXTEND_CHAR(c) ((signed char) (c))
+#else /* not __STDC__ */
+/* As in Harbison and Steele. */
+#define SIGN_EXTEND_CHAR(c) ((((unsigned char) (c)) ^ 128) - 128)
#endif
static int obscure_syntax = 0;