Nathan,

there could be another issue :

with gcc 8.1.0, I get some warnings (see logs at the end)

From 
https://gcc.gnu.org/onlinedocs/gcc/Common-Function-Attributes.html#index-error-function-attribute

error ("message")warning ("message")

If the error or warning attribute is used on a function declaration
and a call to such a function is not eliminated through dead code
elimination or other optimizations, an error or warning (respectively)
that includes message is diagnosed. This is useful for compile-time
checking, especially together with __builtin_constant_p and inline
functions where checking the inline function arguments is not possible
through extern char [(condition) ? 1 : -1]; tricks.

While it is possible to leave the function undefined and thus invoke a
link failure (to define the function with a message in .gnu.warning*
section), when using these attributes the problem is diagnosed earlier
and with exact location of the call even in presence of inline
functions or when not emitting debugging information.


Unlike the deprecated attribute, nothing is said about variables, so
based on the warning message, I guess the error attribute is only
allowed for functions (e.g. *not* on variables or typedef)

Cheers,

Gilles


mpicc ../../../src/ompi-master/examples/hello_c.c

In file included from ../../../src/ompi-master/examples/hello_c.c:11:

/Users/gilles/local/ompi-master-gcc8/include/mpi.h:423:9: warning:
'error' attribute ignored [-Wattributes]

         __mpi_interface_removed__("MPI_Comm_errhandler_fn was removed
in MPI-3.0; use MPI_Comm_errhandler_function instead");

         ^~~~~~~~~~~~~~~~~~~~~~~~~

/Users/gilles/local/ompi-master-gcc8/include/mpi.h:425:9: warning:
'error' attribute ignored [-Wattributes]

         __mpi_interface_removed__("MPI_File_errhandler_fn was removed
in MPI-3.0; use MPI_File_errhandler_function instead");

         ^~~~~~~~~~~~~~~~~~~~~~~~~

/Users/gilles/local/ompi-master-gcc8/include/mpi.h:427:9: warning:
'error' attribute ignored [-Wattributes]

         __mpi_interface_removed__("MPI_Win_errhandler_fn was removed
in MPI-3.0; use MPI_Win_errhandler_function instead");

         ^~~~~~~~~~~~~~~~~~~~~~~~~

/Users/gilles/local/ompi-master-gcc8/include/mpi.h:429:9: warning:
'error' attribute ignored [-Wattributes]

         __mpi_interface_removed__("MPI_Handler_function was removed
in MPI-3.0; use MPI_Win_errhandler_function instead");

         ^~~~~~~~~~~~~~~~~~~~~~~~~

/Users/gilles/local/ompi-master-gcc8/include/mpi.h:1042:29: warning:
'error' attribute ignored [-Wattributes]

 OMPI_DECLSPEC extern struct ompi_predefined_datatype_t ompi_mpi_lb
__mpi_interface_removed__("MPI_LB was removed in MPI-3.0");

                             ^~~~~~~~~~~~~~~~~~~~~~~~~~

/Users/gilles/local/ompi-master-gcc8/include/mpi.h:1043:29: warning:
'error' attribute ignored [-Wattributes]

 OMPI_DECLSPEC extern struct ompi_predefined_datatype_t ompi_mpi_ub
__mpi_interface_removed__("MPI_UB was removed in MPI-3.0");

                             ^~~~~~~~~~~~~~~~~~~~~~~~~~

On Sat, Jun 2, 2018 at 11:56 PM, r...@open-mpi.org <r...@open-mpi.org> wrote:
> No problem - I just commented because earlier in the week it had built
> clean, so I was surprised to get the flood.
>
> This was with gcc 6.3.0, so not that old
>
>
> On Jun 2, 2018, at 7:19 AM, Nathan Hjelm <hje...@me.com> wrote:
>
> Should have it fixed today or tomorrow. Guess I didn't have a sufficiently
> old gcc to catch this during testing.
>
> -Nathan
>
> On Jun 2, 2018, at 1:09 AM, gil...@rist.or.jp wrote:
>
> Hi Ralph,
>
>
>
> see my last comment in https://github.com/open-mpi/ompi/pull/5210
>
>
>
> long story short, this is just a warning you can ignore.
>
> If you are running on a CentOS 7 box
>
> with the default GNU compiler, you can
>
> opal_cv___attribute__error=0 configure ...
>
> in order to get rid of these.
>
>
>
> Cheers,
>
>
>
> Gilles
>
> ----- Original Message -----
>
> Geez guys - what happened?
>
> In file included from monitoring_prof.c:47:0:
> ../../../../ompi/include/mpi.h:423:9:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>       __mpi_interface_removed__("MPI_Comm_errhandler_fn was removed in
> MPI-3.0; use MPI_Comm_errhandler_function instead");
>       ^~~~~~~~~~~~~~~~~~~~~~~~~
> ../../../../ompi/include/mpi.h:425:9:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>       __mpi_interface_removed__("MPI_File_errhandler_fn was removed in
> MPI-3.0; use MPI_File_errhandler_function instead");
>       ^~~~~~~~~~~~~~~~~~~~~~~~~
> ../../../../ompi/include/mpi.h:427:9:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>       __mpi_interface_removed__("MPI_Win_errhandler_fn was removed in
> MPI-3.0; use MPI_Win_errhandler_function instead");
>       ^~~~~~~~~~~~~~~~~~~~~~~~~
> ../../../../ompi/include/mpi.h:429:9:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>       __mpi_interface_removed__("MPI_Handler_function was removed in
> MPI-3.0; use MPI_Win_errhandler_function instead");
>       ^~~~~~~~~~~~~~~~~~~~~~~~~
> ../../../../ompi/include/mpi.h:1042:29:warning: ‘__error__’ attribute
> ignored [-Wattributes]
>  OMPI_DECLSPEC extern struct ompi_predefined_datatype_t ompi_mpi_lb
> __mpi_interface_removed__("MPI_LB was removed in MPI-3.0");
>                 ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ../../../../ompi/include/mpi.h:1043:29:warning: ‘__error__’ attribute
> ignored [-Wattributes]
>  OMPI_DECLSPEC extern struct ompi_predefined_datatype_t ompi_mpi_ub
> __mpi_interface_removed__("MPI_UB was removed in MPI-3.0");
>                 ^~~~~~~~~~~~~~~~~~~~~~~~~~
> In file included from monitoring_test.c:65:0:
> ../../ompi/include/mpi.h:423:9:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>       __mpi_interface_removed__("MPI_Comm_errhandler_fn was removed in
> MPI-3.0; use MPI_Comm_errhandler_function instead");
>       ^~~~~~~~~~~~~~~~~~~~~~~~~
> ../../ompi/include/mpi.h:425:9:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>       __mpi_interface_removed__("MPI_File_errhandler_fn was removed in
> MPI-3.0; use MPI_File_errhandler_function instead");
>       ^~~~~~~~~~~~~~~~~~~~~~~~~
> ../../ompi/include/mpi.h:427:9:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>       __mpi_interface_removed__("MPI_Win_errhandler_fn was removed in
> MPI-3.0; use MPI_Win_errhandler_function instead");
>       ^~~~~~~~~~~~~~~~~~~~~~~~~
> ../../ompi/include/mpi.h:429:9:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>       __mpi_interface_removed__("MPI_Handler_function was removed in
> MPI-3.0; use MPI_Win_errhandler_function instead");
>       ^~~~~~~~~~~~~~~~~~~~~~~~~
> ../../ompi/include/mpi.h:1042:29:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>  OMPI_DECLSPEC extern struct ompi_predefined_datatype_t ompi_mpi_lb
> __mpi_interface_removed__("MPI_LB was removed in MPI-3.0");
>                 ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ../../ompi/include/mpi.h:1043:29:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>  OMPI_DECLSPEC extern struct ompi_predefined_datatype_t ompi_mpi_ub
> __mpi_interface_removed__("MPI_UB was removed in MPI-3.0");
>                 ^~~~~~~~~~~~~~~~~~~~~~~~~~
> In file included from check_monitoring.c:21:0:
> ../../ompi/include/mpi.h:423:9:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>       __mpi_interface_removed__("MPI_Comm_errhandler_fn was removed in
> MPI-3.0; use MPI_Comm_errhandler_function instead");
>       ^~~~~~~~~~~~~~~~~~~~~~~~~
> ../../ompi/include/mpi.h:425:9:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>       __mpi_interface_removed__("MPI_File_errhandler_fn was removed in
> MPI-3.0; use MPI_File_errhandler_function instead");
>       ^~~~~~~~~~~~~~~~~~~~~~~~~
> ../../ompi/include/mpi.h:427:9:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>       __mpi_interface_removed__("MPI_Win_errhandler_fn was removed in
> MPI-3.0; use MPI_Win_errhandler_function instead");
>       ^~~~~~~~~~~~~~~~~~~~~~~~~
> ../../ompi/include/mpi.h:429:9:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>       __mpi_interface_removed__("MPI_Handler_function was removed in
> MPI-3.0; use MPI_Win_errhandler_function instead");
>       ^~~~~~~~~~~~~~~~~~~~~~~~~
> ../../ompi/include/mpi.h:1042:29:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>  OMPI_DECLSPEC extern struct ompi_predefined_datatype_t ompi_mpi_lb
> __mpi_interface_removed__("MPI_LB was removed in MPI-3.0");
>                 ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ../../ompi/include/mpi.h:1043:29:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>  OMPI_DECLSPEC extern struct ompi_predefined_datatype_t ompi_mpi_ub
> __mpi_interface_removed__("MPI_UB was removed in MPI-3.0");
>                 ^~~~~~~~~~~~~~~~~~~~~~~~~~
> In file included from example_reduce_count.c:12:0:
> ../../ompi/include/mpi.h:423:9:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>       __mpi_interface_removed__("MPI_Comm_errhandler_fn was removed in
> MPI-3.0; use MPI_Comm_errhandler_function instead");
>       ^~~~~~~~~~~~~~~~~~~~~~~~~
> ../../ompi/include/mpi.h:425:9:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>       __mpi_interface_removed__("MPI_File_errhandler_fn was removed in
> MPI-3.0; use MPI_File_errhandler_function instead");
>       ^~~~~~~~~~~~~~~~~~~~~~~~~
> ../../ompi/include/mpi.h:427:9:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>       __mpi_interface_removed__("MPI_Win_errhandler_fn was removed in
> MPI-3.0; use MPI_Win_errhandler_function instead");
>       ^~~~~~~~~~~~~~~~~~~~~~~~~
> ../../ompi/include/mpi.h:429:9:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>       __mpi_interface_removed__("MPI_Handler_function was removed in
> MPI-3.0; use MPI_Win_errhandler_function instead");
>       ^~~~~~~~~~~~~~~~~~~~~~~~~
> In file included from test_pvar_access.c:46:0:
> ../../ompi/include/mpi.h:423:9:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>       __mpi_interface_removed__("MPI_Comm_errhandler_fn was removed in
> MPI-3.0; use MPI_Comm_errhandler_function instead");
>       ^~~~~~~~~~~~~~~~~~~~~~~~~
> ../../ompi/include/mpi.h:425:9:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>       __mpi_interface_removed__("MPI_File_errhandler_fn was removed in
> MPI-3.0; use MPI_File_errhandler_function instead");
>       ^~~~~~~~~~~~~~~~~~~~~~~~~
> ../../ompi/include/mpi.h:427:9:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>       __mpi_interface_removed__("MPI_Win_errhandler_fn was removed in
> MPI-3.0; use MPI_Win_errhandler_function instead");
>       ^~~~~~~~~~~~~~~~~~~~~~~~~
> ../../ompi/include/mpi.h:429:9:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>       __mpi_interface_removed__("MPI_Handler_function was removed in
> MPI-3.0; use MPI_Win_errhandler_function instead");
>       ^~~~~~~~~~~~~~~~~~~~~~~~~
> ../../ompi/include/mpi.h:1042:29:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>  OMPI_DECLSPEC extern struct ompi_predefined_datatype_t ompi_mpi_lb
> __mpi_interface_removed__("MPI_LB was removed in MPI-3.0");
>                 ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ../../ompi/include/mpi.h:1043:29:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>  OMPI_DECLSPEC extern struct ompi_predefined_datatype_t ompi_mpi_ub
> __mpi_interface_removed__("MPI_UB was removed in MPI-3.0");
>                 ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ../../ompi/include/mpi.h:1042:29:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>  OMPI_DECLSPEC extern struct ompi_predefined_datatype_t ompi_mpi_lb
> __mpi_interface_removed__("MPI_LB was removed in MPI-3.0");
>                 ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ../../ompi/include/mpi.h:1043:29:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>  OMPI_DECLSPEC extern struct ompi_predefined_datatype_t ompi_mpi_ub
> __mpi_interface_removed__("MPI_UB was removed in MPI-3.0");
>                 ^~~~~~~~~~~~~~~~~~~~~~~~~~
> In file included from test_overhead.c:28:0:
> ../../ompi/include/mpi.h:423:9:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>       __mpi_interface_removed__("MPI_Comm_errhandler_fn was removed in
> MPI-3.0; use MPI_Comm_errhandler_function instead");
>       ^~~~~~~~~~~~~~~~~~~~~~~~~
> ../../ompi/include/mpi.h:425:9:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>       __mpi_interface_removed__("MPI_File_errhandler_fn was removed in
> MPI-3.0; use MPI_File_errhandler_function instead");
>       ^~~~~~~~~~~~~~~~~~~~~~~~~
> ../../ompi/include/mpi.h:427:9:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>       __mpi_interface_removed__("MPI_Win_errhandler_fn was removed in
> MPI-3.0; use MPI_Win_errhandler_function instead");
>       ^~~~~~~~~~~~~~~~~~~~~~~~~
> ../../ompi/include/mpi.h:429:9:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>       __mpi_interface_removed__("MPI_Handler_function was removed in
> MPI-3.0; use MPI_Win_errhandler_function instead");
>       ^~~~~~~~~~~~~~~~~~~~~~~~~
> ../../ompi/include/mpi.h:1042:29:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>  OMPI_DECLSPEC extern struct ompi_predefined_datatype_t ompi_mpi_lb
> __mpi_interface_removed__("MPI_LB was removed in MPI-3.0");
>                 ^~~~~~~~~~~~~~~~~~~~~~~~~~
> ../../ompi/include/mpi.h:1043:29:warning: ‘__error__’ attribute ignored
> [-Wattributes]
>  OMPI_DECLSPEC extern struct ompi_predefined_datatype_t ompi_mpi_ub
> __mpi_interface_removed__("MPI_UB was removed in MPI-3.0");
>
>
> _______________________________________________
> devel mailing list
> devel@lists.open-mpi.org
> https://lists.open-mpi.org/mailman/listinfo/devel
>
> _______________________________________________
> devel mailing list
> devel@lists.open-mpi.org
> https://lists.open-mpi.org/mailman/listinfo/devel
>
>
>
> _______________________________________________
> devel mailing list
> devel@lists.open-mpi.org
> https://lists.open-mpi.org/mailman/listinfo/devel
_______________________________________________
devel mailing list
devel@lists.open-mpi.org
https://lists.open-mpi.org/mailman/listinfo/devel

Reply via email to