From: Luis Machado <lgustavo@codesourcery.com>
To: "'gdb-patches@sourceware.org'" <gdb-patches@sourceware.org>
Subject: [PATCH, testsuite] Prevent warnings due to dummy malloc calls.
Date: Tue, 26 Nov 2013 21:32:00 -0000 [thread overview]
Message-ID: <5294F42D.6020007@codesourcery.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 630 bytes --]
Hi,
When running GDB's testsuite with libraries/compilers that are more
restrictive in terms of warnings, i've found that some tests were
failing due to malloc being called but not having its return value
assigned to any variables, leading to this warning:
warning: ignoring return value of 'malloc', declared with attribute
warn_unused_result [-Wunused-result]
The following patch adjusts those testcases to silence the warnings by
(1) assigning malloc's return value and (2) freeing that pointer later on.
In the case of gdb.base/randomize.c, we're missing a free call, which
leads to an unused variable warning.
Ok?
[-- Attachment #2: malloc.diff --]
[-- Type: text/x-patch, Size: 2749 bytes --]
2013-11-26 Luis Machado <lgustavo@codesourcery.com>
gdb/testsuite/
* gdb.base/callfuncs.c (main): Assign malloc's return value
and free it afterwards.
* gdb.base/charset-malloc.c (malloc_stub): Likewise.
* gdb.base/printcmds.c (main): Likewise.
* gdb.base/randomize.c (main): Free "p".
* gdb.base/setvar.c (dummy): Assign malloc's return value
and free it afterwards.
diff --git a/gdb/testsuite/gdb.base/callfuncs.c b/gdb/testsuite/gdb.base/callfuncs.c
index 0d76ee9..3872f5c 100644
--- a/gdb/testsuite/gdb.base/callfuncs.c
+++ b/gdb/testsuite/gdb.base/callfuncs.c
@@ -652,9 +652,13 @@ voidfunc (void)
int main ()
{
- malloc(1);
+ void *p = malloc (1);
t_double_values(double_val1, double_val2);
t_structs_c(struct_val1);
+
+ if (p != NULL)
+ free (p);
+
return 0 ;
}
diff --git a/gdb/testsuite/gdb.base/charset-malloc.c b/gdb/testsuite/gdb.base/charset-malloc.c
index 58242a2..54a9bd6 100644
--- a/gdb/testsuite/gdb.base/charset-malloc.c
+++ b/gdb/testsuite/gdb.base/charset-malloc.c
@@ -31,5 +31,8 @@ malloc_stub (void)
{
/* charset.exp wants to allocate memory for constants. So make sure malloc
gets linked into the program. */
- malloc (1);
+ void *p = malloc (1);
+
+ if (p != NULL)
+ free (p);
}
diff --git a/gdb/testsuite/gdb.base/printcmds.c b/gdb/testsuite/gdb.base/printcmds.c
index d80c13d..806f421 100644
--- a/gdb/testsuite/gdb.base/printcmds.c
+++ b/gdb/testsuite/gdb.base/printcmds.c
@@ -218,10 +218,13 @@ char invalid_RRR[] = "aaaaaaaaaaaaaaaaaaaa"
int main ()
{
- malloc(1);
+ void *p = malloc (1);
/* Prevent AIX linker from removing variables. */
return ctable1[0] + ctable2[0] + int1dim[0] + int2dim[0][0]
+ int3dim[0][0][0] + int4dim[0][0][0][0] + teststring[0] +
*parrays -> array1 + a1[0] + a2[0];
+
+ if (p != NULL)
+ free (p);
}
diff --git a/gdb/testsuite/gdb.base/randomize.c b/gdb/testsuite/gdb.base/randomize.c
index 6a65663..127a4c7 100644
--- a/gdb/testsuite/gdb.base/randomize.c
+++ b/gdb/testsuite/gdb.base/randomize.c
@@ -24,5 +24,8 @@ int main()
p = malloc (1);
+ if (p != NULL)
+ free (p);
+
return 0; /* print p */
}
diff --git a/gdb/testsuite/gdb.base/setvar.c b/gdb/testsuite/gdb.base/setvar.c
index 3a80b22..0022dc0 100644
--- a/gdb/testsuite/gdb.base/setvar.c
+++ b/gdb/testsuite/gdb.base/setvar.c
@@ -204,7 +204,7 @@ dummy ()
{
/* setvar.exp wants to allocate memory for constants. So make sure malloc
gets linked into the program. */
- malloc (1);
+ void *p = malloc (1);
/* Some linkers (e.g. on AIX) remove unreferenced variables,
so make sure to reference them. */
@@ -278,4 +278,7 @@ dummy ()
sef.field = s1;
uef.field = u1;
#endif
+
+ if (p != NULL)
+ free (p);
}
next reply other threads:[~2013-11-26 19:19 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-11-26 21:32 Luis Machado [this message]
2013-11-26 21:50 ` Doug Evans
2013-11-26 21:50 ` Luis Machado
2013-11-27 14:44 ` Luis Machado
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5294F42D.6020007@codesourcery.com \
--to=lgustavo@codesourcery.com \
--cc=gdb-patches@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox