[CMake] compiler bug turning up in cmake package?

Alexander Neundorf a.neundorf-work at gmx.net
Wed Sep 3 15:00:59 EDT 2008


On Tuesday 26 August 2008, Rex Dieter wrote:
> John Fine wrote:
> > Ulrich Drepper wrote:
> >> It's most certainly not that simple. I haven't looked at the sources.
> >> But the asm code does not really correspond to the code above.  The
> >> function above is most certainly inlined.  The problem might very well
> >> (and most likely is) in the use of this function.  Look at the
> >>
> >>   cmELF::GetRPath()
> >>
> >> function and where it directly or indirectly uses the Valid function.
> >
> > It is very simple and not a compiler bug, and you are correct that the
> > error is in GetRPath.
> >
> > The code is
> >
> >   if(this->Valid() &&
> >      this->Internal->GetFileType() == cmELF::FileTypeExecutable ||
> >      this->Internal->GetFileType() == cmELF::FileTypeSharedLibrary)
> >
> > Notice the lack of () around the || lines
>
> So the simple(?) fix involves something like:
> http://rdieter.fedorapeople.org/cmake-2.6.1-parens.patch

If I understand correctly this is fixed in cmake cvs and will be in 2.6.2:
http://www.cmake.org/cgi-bin/viewcvs.cgi/Source/cmELF.cxx?root=CMake&r1=1.12&r2=1.13

Alex


More information about the CMake mailing list