[mpich-commits] [mpich] MPICH primary repository branch, master, updated. v3.0.3-37-gfec2569
mysql vizuser
noreply at mpich.org
Mon Apr 22 10:48:42 CDT 2013
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 fec2569df449da7e1266e83be8900ef17f18456d (commit)
via 9873c9a2afa1a49eb3004d26a8641f49426be491 (commit)
via 86e9688fa2d942bd54b0ff11009c74582d5279c8 (commit)
via ce7fa89bc640a4aba39f3398c4215e1f0f6d6f1f (commit)
from 934bd27d4948d9e5ef430267981045bf9a7d2fa4 (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/fec2569df449da7e1266e83be8900ef17f18456d
commit fec2569df449da7e1266e83be8900ef17f18456d
Author: Dave Goodell <goodell at mcs.anl.gov>
Date: Fri Mar 22 18:07:33 2013 -0500
fix uninitialized variable warnings
These were not spotted earlier because our `--enable-strict`
functionality was broken, especially under clang.
Reviewed-by: balaji
diff --git a/src/mpi/coll/helper_fns.c b/src/mpi/coll/helper_fns.c
index 60741a0..677b0b7 100644
--- a/src/mpi/coll/helper_fns.c
+++ b/src/mpi/coll/helper_fns.c
@@ -47,7 +47,8 @@ int MPIC_Probe(int source, int tag, MPI_Comm comm, MPI_Status *status)
int MPIC_Send(const void *buf, int count, MPI_Datatype datatype, int dest, int tag,
MPI_Comm comm)
{
- int mpi_errno, context_id;
+ int mpi_errno = MPI_SUCCESS;
+ int context_id;
MPID_Request *request_ptr=NULL;
MPID_Comm *comm_ptr=NULL;
MPIDI_STATE_DECL(MPID_STATE_MPIC_SEND);
@@ -88,7 +89,8 @@ int MPIC_Send(const void *buf, int count, MPI_Datatype datatype, int dest, int t
int MPIC_Recv(void *buf, int count, MPI_Datatype datatype, int source, int tag,
MPI_Comm comm, MPI_Status *status)
{
- int mpi_errno, context_id;
+ int mpi_errno = MPI_SUCCESS;
+ int context_id;
MPID_Request *request_ptr=NULL;
MPID_Comm *comm_ptr = NULL;
MPIDI_STATE_DECL(MPID_STATE_MPIC_RECV);
@@ -136,7 +138,8 @@ int MPIC_Recv(void *buf, int count, MPI_Datatype datatype, int source, int tag,
int MPIC_Ssend(const void *buf, int count, MPI_Datatype datatype, int dest, int tag,
MPI_Comm comm)
{
- int mpi_errno, context_id;
+ int mpi_errno = MPI_SUCCESS;
+ int context_id;
MPID_Request *request_ptr=NULL;
MPID_Comm *comm_ptr=NULL;
MPIDI_STATE_DECL(MPID_STATE_MPIC_SSEND);
@@ -180,7 +183,8 @@ int MPIC_Sendrecv(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
MPI_Comm comm, MPI_Status *status)
{
MPID_Request *recv_req_ptr=NULL, *send_req_ptr=NULL;
- int mpi_errno, context_id;
+ int mpi_errno = MPI_SUCCESS;
+ int context_id;
MPID_Comm *comm_ptr = NULL;
MPIDI_STATE_DECL(MPID_STATE_MPIC_SENDRECV);
@@ -476,7 +480,8 @@ int MPIR_Localcopy(const void *sendbuf, int sendcount, MPI_Datatype sendtype,
int MPIC_Isend(const void *buf, int count, MPI_Datatype datatype, int dest, int tag,
MPI_Comm comm, MPI_Request *request)
{
- int mpi_errno, context_id;
+ int mpi_errno = MPI_SUCCESS;
+ int context_id;
MPID_Request *request_ptr=NULL;
MPID_Comm *comm_ptr=NULL;
MPIDI_STATE_DECL(MPID_STATE_MPIC_ISEND);
@@ -511,7 +516,8 @@ int MPIC_Isend(const void *buf, int count, MPI_Datatype datatype, int dest, int
int MPIC_Irecv(void *buf, int count, MPI_Datatype datatype, int
source, int tag, MPI_Comm comm, MPI_Request *request)
{
- int mpi_errno, context_id;
+ int mpi_errno = MPI_SUCCESS;
+ int context_id;
MPID_Request *request_ptr=NULL;
MPID_Comm *comm_ptr = NULL;
MPIDI_STATE_DECL(MPID_STATE_MPIC_IRECV);
http://git.mpich.org/mpich.git/commitdiff/9873c9a2afa1a49eb3004d26a8641f49426be491
commit 9873c9a2afa1a49eb3004d26a8641f49426be491
Author: Dave Goodell <goodell at mcs.anl.gov>
Date: Fri Mar 22 16:38:04 2013 -0500
use C99-standard `__VA_ARGS__`
Use C99-standard `__VA_ARGS__` instead of a non-standard GCC extension
that does the same thing.
This version based on code review feedback from Pavan.
No reviewer.
diff --git a/src/mpid/ch3/include/mpidimpl.h b/src/mpid/ch3/include/mpidimpl.h
index a33c8c8..1350e64 100644
--- a/src/mpid/ch3/include/mpidimpl.h
+++ b/src/mpid/ch3/include/mpidimpl.h
@@ -1018,15 +1018,15 @@ extern char *MPIDI_DBG_parent_str;
#define MPIDI_ERR_PRINTF(e) MPIDI_err_printf e
-#if defined(HAVE_CPP_VARARGS)
-# define MPIDI_dbg_printf(level, func, fmt, args...) \
+#if defined(HAVE_MACRO_VA_ARGS)
+# define MPIDI_dbg_printf(level, func, fmt, ...) \
{ \
- MPIU_dbglog_printf("[%d] %s(): " fmt "\n", MPIR_Process.comm_world->rank, func, ## args); \
+ MPIU_dbglog_printf("[%d] %s(): " fmt "\n", MPIR_Process.comm_world->rank, func, __VA_ARGS__); \
}
-# define MPIDI_err_printf(func, fmt, args...) \
+# define MPIDI_err_printf(func, fmt, ...) \
{ \
- MPIU_Error_printf("[%d] ERROR - %s(): " fmt "\n", MPIR_Process.comm_world->rank, func, ## args); \
- fflush(stdout); \
+ MPIU_Error_printf("[%d] ERROR - %s(): " fmt "\n", MPIR_Process.comm_world->rank, func, __VA_ARGS__); \
+ fflush(stdout); \
}
#endif
diff --git a/src/mpid/ch3/subconfigure.m4 b/src/mpid/ch3/subconfigure.m4
index efe1acc..f90cc94 100644
--- a/src/mpid/ch3/subconfigure.m4
+++ b/src/mpid/ch3/subconfigure.m4
@@ -197,20 +197,6 @@ The ch3 devies was selected yet a set of working OpenPA headers
were not found. Please check the OpenPA configure step for errors.])
fi
-AC_CACHE_CHECK([whether CPP accepts variable length argument lists],
-pac_cv_have_cpp_varargs,[
-AC_TRY_COMPILE([
-#include <stdio.h>
-#define MY_PRINTF(rank, fmt, args...) printf("%d: " fmt, rank, ## args)
-],[
-MY_PRINTF(0, "hello");
-MY_PRINTF(1, "world %d", 3);
-], pac_cv_have_cpp_varargs=yes, pac_cv_have_cpp_varargs=no)
-])
-if test $pac_cv_have_cpp_varargs = "yes" ; then
- AC_DEFINE(HAVE_CPP_VARARGS,,[Define if CPP supports macros with a variable number arguments])
-fi
-
AC_C_BIGENDIAN
])dnl end AM_COND_IF(BUILD_CH3,...)
diff --git a/src/mpid/ch3/util/sock/subconfigure.m4 b/src/mpid/ch3/util/sock/subconfigure.m4
index 9db116d..994bf6a 100644
--- a/src/mpid/ch3/util/sock/subconfigure.m4
+++ b/src/mpid/ch3/util/sock/subconfigure.m4
@@ -28,21 +28,6 @@ AC_DEFUN([PAC_SUBCFG_BODY_]PAC_SUBCFG_AUTO_SUFFIX,[
dnl AC_CHECK_FUNCS(CFUUIDCreate uuid_generate time)
dnl AC_SEARCH_LIBS(uuid_generate, uuid)
- dnl FIXME this should be a common test, already performed at a higher level
- AC_CACHE_CHECK([whether CPP accepts variable length argument lists],
- pac_cv_have_cpp_varargs,[
-AC_TRY_COMPILE([
-#include <stdio.h>
-#define MY_PRINTF(rank, fmt, args...) printf("%d: " fmt, rank, ## args)
-],[
-MY_PRINTF(0, "hello");
-MY_PRINTF(1, "world %d", 3);
-], pac_cv_have_cpp_varargs=yes, pac_cv_have_cpp_varargs=no)
- ])
- if test $pac_cv_have_cpp_varargs = "yes" ; then
- AC_DEFINE(HAVE_CPP_VARARGS,,[Define if CPP supports macros with a variable number arguments])
- fi
-
# If we need the socket code, see if we can use struct ifconf
# sys/socket.h is needed on Solaris
AC_CACHE_CHECK([whether we can use struct ifconf],
http://git.mpich.org/mpich.git/commitdiff/86e9688fa2d942bd54b0ff11009c74582d5279c8
commit 86e9688fa2d942bd54b0ff11009c74582d5279c8
Author: Dave Goodell <goodell at mcs.anl.gov>
Date: Fri Mar 22 15:46:52 2013 -0500
strict: add `-Werror-implicit-function-declaration`
We want to fail-fast when these obvious bugs are spotted by the
compiler, rather than much later when we attempt to link `examples/cpi`.
The biggest risk to this sort of change is that it _might_ break some
subsequent autoconf-layer tests which use implicit functions.
Reviewed-by: balaji
diff --git a/confdb/aclocal_cc.m4 b/confdb/aclocal_cc.m4
index 1492da4..237c435 100644
--- a/confdb/aclocal_cc.m4
+++ b/confdb/aclocal_cc.m4
@@ -481,6 +481,10 @@ if test "$enable_strict_done" != "yes" ; then
# compare it to 0 later to see if it was updated. Also when using strtod()
# one needs to compare the return value with 0 to see whether a conversion
# was performed.
+ # -Werror-implicit-function-declaration -- implicit function declarations
+ # should never be tolerated. This also ensures that we get quick
+ # compilation failures rather than later link failures that usually
+ # come from a function name typo.
# the embedded newlines in this string are safe because we evaluate each
# argument in the for-loop below and append them to the CFLAGS with a space
# as the separator instead
@@ -514,6 +518,7 @@ if test "$enable_strict_done" != "yes" ; then
-Wvariadic-macros
-Wno-format-zero-length
-Wno-type-limits
+ -Werror-implicit-function-declaration
"
enable_c89=yes
http://git.mpich.org/mpich.git/commitdiff/ce7fa89bc640a4aba39f3398c4215e1f0f6d6f1f
commit ce7fa89bc640a4aba39f3398c4215e1f0f6d6f1f
Author: Dave Goodell <goodell at mcs.anl.gov>
Date: Fri Mar 22 15:39:09 2013 -0500
un-break `--enable-strict` when using clang
It turns out that `--enable-strict` stopped working at some point when
building with clang. It would treat the conftest program which was
intended to elicit a warning as being completely erroneous. My fix is
to instead emit a program with more modest intentional bugs so that we
will get simple warnings which most compilers will detect.
Reviewed-by: balaji
diff --git a/confdb/aclocal_cc.m4 b/confdb/aclocal_cc.m4
index 2e1afcc..1492da4 100644
--- a/confdb/aclocal_cc.m4
+++ b/confdb/aclocal_cc.m4
@@ -71,7 +71,18 @@ if test "$pac_result" = "yes" \
-a "$pac_c_check_compiler_option_prototest" != "no" ; then
AC_MSG_CHECKING([whether C compiler option $1 works with an invalid prototype program])
AC_LINK_IFELSE([
- AC_LANG_SOURCE([void main(){ return 0; }])
+ dnl We want a warning, but we don't want to inadvertently disable
+ dnl special warnings like -Werror-implicit-function-declaration (e.g.,
+ dnl in PAC_CC_STRICT) by compiling something that might actually be
+ dnl treated as an error by the compiler. So we try to elicit an
+ dnl "unused variable" warning and/or an "uninitialized" warning with the
+ dnl test program below.
+ dnl
+ dnl The old sanity program was:
+ dnl void main() {return 0;}
+ dnl which clang (but not GCC) would treat as an *error*, invalidating
+ dnl the test for any given parameter.
+ AC_LANG_SOURCE([int main(int argc, char **argv){ int foo, bar = 0; foo += 1; return foo; }])
],[pac_result=yes],[pac_result=no])
AC_MSG_RESULT([$pac_result])
fi
-----------------------------------------------------------------------
Summary of changes:
confdb/aclocal_cc.m4 | 18 +++++++++++++++++-
src/mpi/coll/helper_fns.c | 18 ++++++++++++------
src/mpid/ch3/include/mpidimpl.h | 12 ++++++------
src/mpid/ch3/subconfigure.m4 | 14 --------------
src/mpid/ch3/util/sock/subconfigure.m4 | 15 ---------------
5 files changed, 35 insertions(+), 42 deletions(-)
hooks/post-receive
--
MPICH primary repository
More information about the commits
mailing list