Re: [OMPI devel] VT build failure with Clang++

2012-02-16 Thread Matthias Jurenz
I could reproduce the build error with Clang 2.9. Adding the operator< to 
DefRec_BaseS fixes the problem, although this operator is not used.

Thanks for the hints!

I'll commit this fix and create a CMR to v1.5 soon.

Matthias

On Thursday 16 February 2012 04:22:33 Paul H. Hargrove wrote:
> Dmitri,
> 
> Since I have not seen any error like this from gcc, pgi, pathcc, xlc,
> icc, open64 or suncc, I am pretty sure the problem is Clang-specific
> even if not a true "bug" in Clang.
> 
> I just test everything I can get my hands on and report what I find.
> If there is not a simple fix for this then it is not a big deal YET.
> However, it is widely expected that Apple will move to a Clang-only (no
> gcc/g++) release of Xcode as soon as they are able.
> So, it *might* become a concern in the near future.
> 
> So, how should we proceed on this?
> 
> -Paul
> 
> On 2/15/2012 8:38 AM, Dmitri Gribenko wrote:
> > I don't know if it is a Clang bug, but here's my understanding of the
> > problem.
> 
> [...excellent description removed...]
> 
> > I'm not sure if this is a bug in Clang because I don't know if Clang
> > should have tried to instantiate create().
> > 
> > Dmitri


Re: [OMPI devel] VT build failure with Clang++

2012-02-15 Thread Paul H. Hargrove

Dmitri,

Since I have not seen any error like this from gcc, pgi, pathcc, xlc, 
icc, open64 or suncc, I am pretty sure the problem is Clang-specific 
even if not a true "bug" in Clang.


I just test everything I can get my hands on and report what I find.
If there is not a simple fix for this then it is not a big deal YET.
However, it is widely expected that Apple will move to a Clang-only (no 
gcc/g++) release of Xcode as soon as they are able.

So, it *might* become a concern in the near future.

So, how should we proceed on this?

-Paul

On 2/15/2012 8:38 AM, Dmitri Gribenko wrote:

I don't know if it is a Clang bug, but here's my understanding of the problem.

[...excellent description removed...]


I'm not sure if this is a bug in Clang because I don't know if Clang
should have tried to instantiate create().

Dmitri


--
Paul H. Hargrove  phhargr...@lbl.gov
Future Technologies Group
HPC Research Department   Tel: +1-510-495-2352
Lawrence Berkeley National Laboratory Fax: +1-510-486-6900



Re: [OMPI devel] VT build failure with Clang++

2012-02-15 Thread Dmitri Gribenko
On Wed, Feb 15, 2012 at 10:56 AM, Paul Hargrove  wrote:
> I strongly suspect that this is a Clang++ bug.

I don't know if it is a Clang bug, but here's my understanding of the problem.

TokenFactoryScopeC::create() boils down to this:

template 
uint32_t
TokenFactoryScopeC::create( const void * localDef, uint32_t globalToken )
{
   const T & local_def = *static_cast(localDef);
   typename std::set::const_iterator it = m_globDefs->find(
local_def ); // need operator< for T
   return 0;
}

When clang tries to instantiate
TokenFactoryScopeC::getPackSize(), it tries to
instantiate create() too.  It fails to do so because there is no
operator< defined for DefRec_BaseS.

Anyway, this looks like a bug in VT code, here's why.  DefRec_* have
DefRec_*::SortS defined, but it is not used in
TokenFactoryScopeC::m_globDefs.  Probably it should be, something
like this:

std::set * m_globDefs;

I'm not sure if this is a bug in Clang because I don't know if Clang
should have tried to instantiate create().

Dmitri

-- 
main(i,j){for(i=2;;i++){for(j=2;j*/


[OMPI devel] VT build failure with Clang++

2012-02-15 Thread Paul Hargrove
When trying to build the OMPI trunk or the 1.5 branch with clang-3.0, I
cannot build VT.
If have tried both MacOS 10.7 and FreeBSD-9.0-RELEASE.
In all four builds (2 branches X 2 OSes) the failure appears to be "deep"
in the C++ STL.

I strongly suspect that this is a Clang++ bug.
However, I am reporting it here in the hope that somebody more familiar
with STL and/or the VT code can take a closer look to rule out the
possibility that the STL *usage* might be "border-line".

The failure portion of the make output (nightly trunk tarball 1.7a1r25903)
is attached.

-Paul

--
Paul H. Hargrove  phhargr...@lbl.gov
Future Technologies Group
HPC Research Department   Tel: +1-510-495-2352
Lawrence Berkeley National Laboratory Fax: +1-510-486-6900


clang-vt-make.log
Description: Binary data