From: Vladimir Mezentsev Date: Mon, 19 Dec 2022 09:01:04 +0000 (-0800) Subject: gprofng: PR29646 Various warnings X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=309b9a1abf77d9c643206f512d3db3ed7a23b854;p=binutils-gdb.git gprofng: PR29646 Various warnings gprofng/ChangeLog 2022-12-19 Vladimir Mezentsev PR gprofng/29646 * common/core_pcbe.c: Fix missingReturn warning. * libcollector/iolib.c: Fix -Waddress warnings. * src/Settings.cc: Likewise. * src/checks.cc: Likewise. * libcollector/linetrace.c: Likewise. * libcollector/iotrace.c: Fix va_end_missing error. * libcollector/libcol_util.c: Fix uninitvar warning. * src/Command.cc: Fix arrayIndexOutOfBounds error. * src/Function.cc: Fix uninitStructMember warning. * src/ipc.cc: Fix -Wwrite-strings warnings. --- diff --git a/gprofng/common/core_pcbe.c b/gprofng/common/core_pcbe.c index 6f746d8da1d..e10a14ea1e8 100644 --- a/gprofng/common/core_pcbe.c +++ b/gprofng/common/core_pcbe.c @@ -2937,6 +2937,8 @@ core_pcbe_cpuref (void) return GTXT ("See Chapter 19 of the \"Intel 64 and IA-32 Architectures Software Developer's Manual Volume 3B: System Programming Guide, Part 2\"\nOrder Number: 253669-045US, January 2013"); } +#else + return GTXT ("Unknown cpu model"); #endif } diff --git a/gprofng/libcollector/iolib.c b/gprofng/libcollector/iolib.c index 861843c183d..5f09b0e4cd1 100644 --- a/gprofng/libcollector/iolib.c +++ b/gprofng/libcollector/iolib.c @@ -148,7 +148,7 @@ __collector_create_handle (char *descp) init (); /* set up header for file, file name, etc. */ - if (__collector_exp_dir_name == NULL) + if (*__collector_exp_dir_name == 0) { __collector_log_write ("__collector_exp_dir_name==NULL\n", SP_JCMD_CERROR, COL_ERROR_EXPOPEN); diff --git a/gprofng/libcollector/iotrace.c b/gprofng/libcollector/iotrace.c index e7e8afa307d..466bf457b75 100644 --- a/gprofng/libcollector/iotrace.c +++ b/gprofng/libcollector/iotrace.c @@ -2713,10 +2713,15 @@ fprintf (FILE *stream, const char *format, ...) if (NULL_PTR (vfprintf)) init_io_intf (); if (CHCK_REENTRANCE (guard) || stream == NULL) - return CALL_REAL (vfprintf)(stream, format, ap); + { + ret = CALL_REAL (vfprintf)(stream, format, ap); + va_end (ap); + return ret; + } PUSH_REENTRANCE (guard); hrtime_t reqt = gethrtime (); ret = CALL_REAL (vfprintf)(stream, format, ap); + va_end (ap); if (RECHCK_REENTRANCE (guard)) { POP_REENTRANCE (guard); diff --git a/gprofng/libcollector/libcol_util.c b/gprofng/libcollector/libcol_util.c index d682aa0ab29..454f45bba00 100644 --- a/gprofng/libcollector/libcol_util.c +++ b/gprofng/libcollector/libcol_util.c @@ -137,7 +137,7 @@ atomic_swap (volatile int * p, int v) int __collector_mutex_lock (collector_mutex_t *lock_var) { - volatile unsigned int i; /* xxxx volatile may not be honored on amd64 -x04 */ + volatile unsigned int i = 0; /* xxxx volatile may not be honored on amd64 -x04 */ if (!(*lock_var) && !atomic_swap (lock_var, 1)) return 0; diff --git a/gprofng/libcollector/linetrace.c b/gprofng/libcollector/linetrace.c index d67a66a3734..e974c97ec9b 100644 --- a/gprofng/libcollector/linetrace.c +++ b/gprofng/libcollector/linetrace.c @@ -832,7 +832,7 @@ linetrace_ext_fork_epilogue (const char *variant, const pid_t ret, char * n_line const char *params = CALL_UTIL (getenv)(SP_COLLECTOR_PARAMS); int ret; - if (new_exp_name == NULL) + if (*new_exp_name == 0) TprintfT (DBG_LT0, "linetrace_ext_fork_epilogue: ERROR: getenv(%s) undefined -- new expt aborted!\n", SP_COLLECTOR_EXPNAME); else if (params == NULL) diff --git a/gprofng/src/Command.cc b/gprofng/src/Command.cc index d1620d7acd6..40530c2d15d 100644 --- a/gprofng/src/Command.cc +++ b/gprofng/src/Command.cc @@ -222,7 +222,7 @@ static Cmdtable cmd_lst[] = { // list of commands // like quit, but deletes all data loaded { HHELP, "xhelp", NULL, NULL, 0, &desc[HHELP]}, - { WHOAMI, "-whoami", NULL, NULL, 0, &desc[WHOAMI]}, + { WHOAMI, "whoami", NULL, NULL, 0, NULL}, // these are not recognized at this point { LOADOBJECT, "segments", "pmap", NULL, 0, &desc[LOADOBJECT]}, diff --git a/gprofng/src/Function.cc b/gprofng/src/Function.cc index b0e4a8ff16a..0436e09ebea 100644 --- a/gprofng/src/Function.cc +++ b/gprofng/src/Function.cc @@ -416,6 +416,8 @@ SrcInfo * Function::new_srcInfo () { SrcInfo *t = new SrcInfo (); + t->src_line = NULL; + t->included_from = NULL; t->next = srcinfo_list; srcinfo_list = t; return t; diff --git a/gprofng/src/Settings.cc b/gprofng/src/Settings.cc index 572997f8a88..53405a20075 100644 --- a/gprofng/src/Settings.cc +++ b/gprofng/src/Settings.cc @@ -1257,7 +1257,7 @@ Settings::set_name_format (char *arg) return CMD_BAD_ARG; bool soname_fmt = false; - if (colon && (colon + 1)) + if (colon) { colon++; if (!strcasecmp (colon, NTXT ("soname"))) diff --git a/gprofng/src/checks.cc b/gprofng/src/checks.cc index 105821e4cfa..6a89a7b1cdb 100644 --- a/gprofng/src/checks.cc +++ b/gprofng/src/checks.cc @@ -326,7 +326,7 @@ collect::check_executable_arch (Elf *elf) // now figure out if the platform can run it struct utsname unbuf; int r = uname (&unbuf); - if (r == 0 && unbuf.machine && strstr (unbuf.machine, "_64") == NULL) + if (r == 0 && strstr (unbuf.machine, "_64") == NULL) // machine can not run 64 bits, but this code is 64-bit return EXEC_ELF_ARCH; } diff --git a/gprofng/src/ipc.cc b/gprofng/src/ipc.cc index 06ba33d5b69..180b5104e22 100644 --- a/gprofng/src/ipc.cc +++ b/gprofng/src/ipc.cc @@ -69,16 +69,16 @@ bool2str (bool v) return v ? "true" : "false"; } -inline char* -str2str (String v) +inline const char* +str2str (const char* v) { - return (char*) (v ? v : "NULL"); + return v ? v : "NULL"; } -inline char* -str2s (String v) +inline const char* +str2s (const char* v) { - return (char*) (v ? v : ""); + return v ? v : ""; } inline DbeView *