Open MPI logo

Hardware Locality Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Hardware Locality Development mailing list

Subject: Re: [hwloc-devel] 1.3.2rc1 has escaped
From: Paul H. Hargrove (PHHargrove_at_[hidden])
Date: 2012-02-09 17:26:53


On 2/9/2012 2:07 PM, Jeff Squyres wrote:
> On Feb 9, 2012, at 2:27 PM, Paul H. Hargrove wrote:
>
>> What you have for the "Make sure..." is wrong in the same way as the one that was in rc1.
>> The problem is that the AC_COMPILE_IFELSE code tests too-few and too-many args together.
>> Since xlc makes too many an error by default, we don't notice its MISbehavior when given too few.
>> So, one needs to split the too-many and too-few tests as I did in the patch I sent.
> Ah. I didn't change that section at all -- I just added the CFLAGS-amend-and-restore behavior.
>
> Hmm. Somehow I totally missed the patch you sent; I see it now (sent last night at 8:53pm US Eastern).
>
> I'm not sure your patch was entirely right -- did you mean for it to ok if we fail the pass-too-many-args test? hwloc_args_check_ok is really only checked as the result of the pass-too-few-args test.
>
> I slightly reworked your patch to check to ensure that *both* of them pass -- how's this?

Sorry, I can't quite parse the diff and can't apply it at the moment (no
ssh).
The intent is to FAIL the compiler if EITHER test were to pass.
So, I think your check for *both* is probably incorrect.

Perhaps this will clarify:
The *intent* was that we run 2 tests via AC_COMPILE_IFELSE().
One tries to pass too many arguments to a function.
The other tries to pass too few.
With an "acceptable" compiler BOTH must FAIL
So the commands-if-success portion of each AC_COMPILE_IFELSE set a
variable (no need to increment).
NOTE: the variable is set on SUCCESS of the AC_COMPILE_IFELSE, not on
failure.
We then test if *either* set the variable.
Sort of a double-negative.

If that was still not clear, let me know and I'll take a look again when
I can apply the patch.

-Paul

-- 
Paul H. Hargrove                          PHHargrove_at_[hidden]
Future Technologies Group
HPC Research Department                   Tel: +1-510-495-2352
Lawrence Berkeley National Laboratory     Fax: +1-510-486-6900