X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=gdb%2Fgdbserver%2Futils.c;h=ec7ed7c0c991932b5f0701859bd08a6559fab7af;hb=8695c747d81a46944b5e7fbf91a29e60bc75ec8a;hp=63d522c95a9a76a6b3a823948a98bde858f31cca;hpb=5b64ad42d36e6d487e1f7287d37fbc243a178e72;p=binutils-gdb.git diff --git a/gdb/gdbserver/utils.c b/gdb/gdbserver/utils.c index 63d522c95a9..ec7ed7c0c99 100644 --- a/gdb/gdbserver/utils.c +++ b/gdb/gdbserver/utils.c @@ -1,21 +1,23 @@ /* General utility routines for the remote server for GDB. - Copyright (C) 1986, 1989, 1993 Free Software Foundation, Inc. + Copyright (C) 1986, 1989, 1993, 1995, 1996, 1997, 1999, 2000, 2002, 2003 + Free Software Foundation, Inc. -This file is part of GDB. + This file is part of GDB. -This program is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2 of the License, or -(at your option) any later version. + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. -You should have received a copy of the GNU General Public License -along with this program; if not, write to the Free Software -Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, + Boston, MA 02110-1301, USA. */ #include "server.h" #include @@ -28,18 +30,16 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ Then return to command level. */ void -perror_with_name (string) - char *string; +perror_with_name (char *string) { - extern int sys_nerr; - extern char *sys_errlist[]; +#ifndef STDC_HEADERS extern int errno; - char *err; +#endif + const char *err; char *combined; - if (errno < sys_nerr) - err = sys_errlist[errno]; - else + err = strerror (errno); + if (err == NULL) err = "unknown error"; combined = (char *) alloca (strlen (err) + strlen (string) + 3); @@ -54,35 +54,16 @@ perror_with_name (string) STRING is the error message, used as a fprintf string, and ARG is passed as an argument to it. */ -#ifdef ANSI_PROTOTYPES -NORETURN void -error (const char *string, ...) -#else void -error (va_alist) - va_dcl -#endif +error (const char *string,...) { extern jmp_buf toplevel; va_list args; -#ifdef ANSI_PROTOTYPES va_start (args, string); -#else - va_start (args); -#endif fflush (stdout); -#ifdef ANSI_PROTOTYPES vfprintf (stderr, string, args); -#else - { - char *string1; - - string1 = va_arg (args, char *); - vfprintf (stderr, string1, args); - } -#endif fprintf (stderr, "\n"); - longjmp(toplevel, 1); + longjmp (toplevel, 1); } /* Print an error message and exit reporting failure. @@ -90,25 +71,26 @@ error (va_alist) STRING and ARG are passed to fprintf. */ /* VARARGS */ -NORETURN void -#ifdef ANSI_PROTOTYPES -fatal (char *string, ...) -#else -fatal (va_alist) - va_dcl -#endif +void +fatal (const char *string,...) { va_list args; -#ifdef ANSI_PROTOTYPES va_start (args, string); -#else - char *string; - va_start (args); - string = va_arg (args, char *); -#endif fprintf (stderr, "gdb: "); vfprintf (stderr, string, args); fprintf (stderr, "\n"); va_end (args); exit (1); } + +/* VARARGS */ +void +warning (const char *string,...) +{ + va_list args; + va_start (args, string); + fprintf (stderr, "gdb: "); + vfprintf (stderr, string, args); + fprintf (stderr, "\n"); + va_end (args); +}