[mpich-devel] [mpich-commits] [mpich] MPICH primary repository branch, master, updated. v3.1-22-gde80ec8
Balaji, Pavan
balaji at anl.gov
Thu Feb 27 13:40:27 CST 2014
And, of course, I totally screwed up the check — it should have been !=, rather than = in the check.
I take solace in the fact that this is not the worst code I’ve written. :-)
— Pavan
On Feb 27, 2014, at 1:32 PM, Dave Goodell (dgoodell) <dgoodell at cisco.com> wrote:
> I saw this fly by and a bug caught the corner of my eye (see inline)
>
> Begin forwarded message:
>
>> From: Service Account <noreply at mpich.org>
>> Subject: [mpich-commits] [mpich] MPICH primary repository branch, master, updated. v3.1-22-gde80ec8
>> Date: February 27, 2014 11:27:24 AM PST
>> To: <all-commits at mpich.org>, <commits at mpich.org>
>> Reply-To: <commits at mpich.org>
>>
>> This is an automated email from the git hooks/post-receive script. It was
>> generated because a ref change was pushed to the repository containing
>> the project "MPICH primary repository".
>>
>> The branch, master has been updated
>> via de80ec8704071f3b9c810509fb8acee345865902 (commit)
>> from 956047a2696bdfb51d66f56d0b226df8d40ebd80 (commit)
>>
>> Those revisions listed above that are new to this repository have
>> not appeared on any other notification email; so we list those
>> revisions in full, below.
>>
>> - Log -----------------------------------------------------------------
>> http://git.mpich.org/mpich.git/commitdiff/de80ec8704071f3b9c810509fb8acee345865902
>>
>> commit de80ec8704071f3b9c810509fb8acee345865902
>> Author: Pavan Balaji <balaji at mcs.anl.gov>
>> Date: Wed Feb 26 11:49:46 2014 -0600
>>
>> Better checks for VA_ARGS.
>>
>> We were disabling VA_ARGS whenever the compiler throws warnings.
>> However, in some cases, the compiler is throwing warnings in general
>> (because of bad user-specified flags) and not specifically because of
>> VA_ARGS. See discussion on the discuss at mpich.org mailing list:
>> http://lists.mpich.org/pipermail/discuss/2014-February/002246.html
>>
>> This patch works around this issue by checking the difference in the
>> warning flags with and without VA_ARGS.
>>
>> Fixes #2047.
>>
>> Signed-off-by: Huiwei Lu <huiweilu at mcs.anl.gov>
>>
>> diff --git a/confdb/aclocal_cc.m4 b/confdb/aclocal_cc.m4
>> index f73aa4c..2612e94 100644
>> --- a/confdb/aclocal_cc.m4
>> +++ b/confdb/aclocal_cc.m4
>> @@ -1644,22 +1644,35 @@ AC_DEFUN([PAC_C_MACRO_VA_ARGS],[
>> AC_MSG_CHECKING([for variable argument list macro functionality])
>>
>> # check if the program links correctly
>> - rm -f pac_test.log
>> - PAC_LINK_IFELSE_LOG([pac_test.log],[AC_LANG_PROGRAM([
>> + rm -f pac_test1.log pac_test2.log
>> +
>> + PAC_LINK_IFELSE_LOG([pac_test1.log],[AC_LANG_PROGRAM([
>> #include <stdio.h>
>> #define conftest_va_arg_macro(...) printf(__VA_ARGS__)
>> ],
>> [conftest_va_arg_macro("a test %d", 3);])],
>> prog_links=yes,prog_links=no)
>>
>> + PAC_LINK_IFELSE_LOG([pac_test2.log],[AC_LANG_PROGRAM([
>> + #include <stdio.h>
>> + #define conftest_va_arg_macro printf
>> + ],
>> + [conftest_va_arg_macro("a test %d", 3);])])
>> +
>> # If the program linked OK, make sure there were no warnings
>> - if test "$prog_links" = "yes" -a "`cat pac_test.log`" = "" ; then
>> + if test "$prog_links" = "yes" -a "`diff pac_test1.log pac_test2.log`" = "" ; then
>> AC_DEFINE([HAVE_MACRO_VA_ARGS],[1],[Define if C99-style variable argument list macro functionality])
>> AC_MSG_RESULT([yes])
>> + elif "`diff pac_test1.log pac_test2.log`" = "" ; then
>
> This is bad shell code. You probably want "elif test" instead.
>
> -Dave
>
>> + AC_MSG_RESULT([no, compiler generates warnings])
>> + echo "With VA_ARGS:"
>> + cat pac_test1.log
>> + echo "Without VA_ARGS:"
>> + cat pac_test2.log
>> else
>> AC_MSG_RESULT([no])
>> fi
>> - rm -f pac_test.log
>> + rm -f pac_test1.log pac_test2.log
>> ])dnl
>>
>> # Will AC_DEFINE([HAVE_BUILTIN_EXPECT]) if the compiler supports __builtin_expect.
>>
>> -----------------------------------------------------------------------
>>
>> Summary of changes:
>> confdb/aclocal_cc.m4 | 21 +++++++++++++++++----
>> 1 files changed, 17 insertions(+), 4 deletions(-)
>>
>>
>> hooks/post-receive
>> --
>> MPICH primary repository
>
More information about the devel
mailing list