patch to fix unused variable warning on windows build
Attached is a small patch which fixes the unused variable warning in the
visual studios build. Seems like VS does not
support __attribute__((unused)) but looks like all other places we must
assign to the variable.
Regards
David Rowley
Attachments:
unused_variable.patchapplication/octet-stream; name=unused_variable.patchDownload
diff --git a/src/backend/utils/cache/relfilenodemap.c b/src/backend/utils/cache/relfilenodemap.c
index f3f9a09..904b2cd 100644
--- a/src/backend/utils/cache/relfilenodemap.c
+++ b/src/backend/utils/cache/relfilenodemap.c
@@ -213,8 +213,6 @@ RelidByRelfilenode(Oid reltablespace, Oid relfilenode)
while (HeapTupleIsValid(ntp = systable_getnext(scandesc)))
{
- bool isnull PG_USED_FOR_ASSERTS_ONLY;
-
if (found)
elog(ERROR,
"unexpected duplicate for tablespace %u, relfilenode %u",
@@ -224,6 +222,7 @@ RelidByRelfilenode(Oid reltablespace, Oid relfilenode)
#ifdef USE_ASSERT_CHECKING
if (assert_enabled)
{
+ bool isnull;
Oid check;
check = fastgetattr(ntp, Anum_pg_class_reltablespace,
RelationGetDescr(relation),
On Thu, Nov 7, 2013 at 11:43 AM, David Rowley <dgrowleyml@gmail.com> wrote:
Attached is a small patch which fixes the unused variable warning in the
visual studios build. Seems like VS does not support
__attribute__((unused)) but looks like all other places we must assign to
the variable.
I have raised same issue some time back, see the below link where
there is some discussion about it.
/messages/by-id/CAA4eK1JEOa1hJGAUwPcqhw8av7zAPkDxJdwUbwEtjomi2f8hFg@mail.gmail.com
I think it is good, if one of committer's who have windows env. can
look into it and commit or provide suggestions, else you can make a
combined patch of this and other warning you saw on windows and upload
to next CF so that it doesn't get lost.
I checked that you have already submitted a patch for this warning
alone in CF.
With Regards,
Amit Kapila.
EnterpriseDB: http://www.enterprisedb.com
--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers
On Sat, Nov 9, 2013 at 7:29 PM, Amit Kapila <amit.kapila16@gmail.com> wrote:
On Thu, Nov 7, 2013 at 11:43 AM, David Rowley <dgrowleyml@gmail.com>
wrote:Attached is a small patch which fixes the unused variable warning in the
visual studios build. Seems like VS does not support
__attribute__((unused)) but looks like all other places we must assign to
the variable.I have raised same issue some time back, see the below link where
there is some discussion about it./messages/by-id/CAA4eK1JEOa1hJGAUwPcqhw8av7zAPkDxJdwUbwEtjomi2f8hFg@mail.gmail.com
Thanks for the link.
The reason that we don't see more warnings for this is that it seems in all
other places where we have used PG_USED_FOR_ASSERTS_ONLY, the variable is
getting assigned to every time, though it will only be when compiled in
debug that the variable is checked. It seems microsoft decided to disable
warnings for assigned but not used for pretty much this reason.
http://stackoverflow.com/questions/10593547/why-is-no-warning-given-for-this-unused-variable
"Microsoft explain that it's because they had lots of complaints from
people who were assigning variables purely so they could see what a method
call returned during debugging, and found the warning irritating:"
So I guess fixing up PG_USED_FOR_ASSERTS_ONLY to work with visual studios
is not required and my patch seems like the fix for this unique case.
I think it is good, if one of committer's who have windows env. can
look into it and commit or provide suggestions, else you can make a
combined patch of this and other warning you saw on windows and upload
to next CF so that it doesn't get lost.
I checked that you have already submitted a patch for this warning
alone in CF.
I was not quite sure what I should do for these tiny patches. Quite often
if a committer happens to read the post and agrees with the patch then it
might get committed pretty quickly even outside a commitfest, but if not
then if I didn't add to the commitfest then it would likely get lost.
Regards
David Rowley
Show quoted text
With Regards,
Amit Kapila.
EnterpriseDB: http://www.enterprisedb.com
On Sat, Nov 9, 2013 at 1:00 PM, David Rowley <dgrowleyml@gmail.com> wrote:
On Sat, Nov 9, 2013 at 7:29 PM, Amit Kapila <amit.kapila16@gmail.com> wrote:
Thanks for the link.
The reason that we don't see more warnings for this is that it seems in all
other places where we have used PG_USED_FOR_ASSERTS_ONLY, the variable is
getting assigned to every time, though it will only be when compiled in
debug that the variable is checked. It seems microsoft decided to disable
warnings for assigned but not used for pretty much this reason.http://stackoverflow.com/questions/10593547/why-is-no-warning-given-for-this-unused-variable
"Microsoft explain that it's because they had lots of complaints from people
who were assigning variables purely so they could see what a method call
returned during debugging, and found the warning irritating:"So I guess fixing up PG_USED_FOR_ASSERTS_ONLY to work with visual studios is
not required and my patch seems like the fix for this unique case.
You are right that for this case it is sufficient to fix it the way
you have done in patch. However it
might be the case that here expectation is to provide a generic
solution for such kind of warnings
(as it doesn't occur on linux or other OS) so that in future such a
case should not arise.
I think it is good, if one of committer's who have windows env. can
look into it and commit or provide suggestions, else you can make a
combined patch of this and other warning you saw on windows and upload
to next CF so that it doesn't get lost.
I checked that you have already submitted a patch for this warning
alone in CF.I was not quite sure what I should do for these tiny patches. Quite often if
a committer happens to read the post and agrees with the patch then it might
get committed pretty quickly even outside a commitfest, but if not then if I
didn't add to the commitfest then it would likely get lost.
You have done the right thing.
With Regards,
Amit Kapila.
EnterpriseDB: http://www.enterprisedb.com
--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers
On Thu, 2013-11-07 at 19:13 +1300, David Rowley wrote:
Attached is a small patch which fixes the unused variable warning in
the visual studios build. Seems like VS does not
support __attribute__((unused)) but looks like all other places we
must assign to the variable.
committed
--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers