Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Development mailing list

Subject: Re: [OMPI devel] 1.5rc5: attribute((noreturn)) and pointers to functions
From: Rainer Keller (keller_at_[hidden])
Date: 2010-08-26 10:49:56


Hi Paul,
having seen Your initial mail on Sun's support for noreturn (I have had some
fun with their CC, see other mail, so I use g++), I implemented Your
suggestion and tried with Sun's 12.1 compiler on Linux x86-64.

I will commit this later in the day (touching m4...)

Thanks,
Rainer

PS: Please note, that the commit won't fix v1.5, since it depends on changes
applied in r22872, revamping the errmgr, which have not been moved over.

On Wednesday 25 August 2010 23:23:01 Paul H. Hargrove wrote:
> Building 1.5rc5 with xlc on linux/ppc I see many instances of the
> following warnings
>
> "../../../../orte/mca/ess/ess.h", line 61.16: 1506-959 (W) The attribute
> "noreturn" is not a valid type attribute and is ignored.
> "../../../../orte/mca/errmgr/errmgr.h", line 134.16: 1506-959 (W) The
> attribute "noreturn" is not a valid type attribute and is ignored.
>
> This is nearly the same as the Sun C 5.10 warning I reported in
> http://www.open-mpi.org/community/lists/devel/2010/08/8323.php
>
> "../../../../openmpi-1.5rc5/orte/mca/ess/ess.h", line 61: warning:
> attribute "noreturn" may not be applied to variable, ignored
> "../../../../openmpi-1.5rc5/orte/mca/errmgr/errmgr.h", line 138:
> warning: attribute "noreturn" may not be applied to variable, ignored
>
> This indicates a common cause and suggests a common solution:
>
> In both cases the configure probe for compiler support for the
> "noreturn" attribute has passed. However, in both cases the compiler is
> not happy applying this attribute to a pointer-to-function, (though gcc
> is apparently fine with this). I believe that the solution to this is
> simply to add a "noreturn_funcptr" probe to
> opal/config/opal_check_attributes.m4, analogous to the format_funcptr
> probe and then define and use a __opal_attribute_noreturn_funcptr__ as
> appropriate.
>
> -Paul

-- 
----------------------------------------------------------------
 Dr.-Ing. Rainer Keller  http://www.hlrs.de/people/keller
 HLRS                         Tel: ++49 (0)711-685 6 5858
 Nobelstrasse 19                 Fax: ++49 (0)711-685 6 5832
 70550 Stuttgart                    email: keller_at_[hidden]     
 Germany                             AIM/Skype:rusraink