[vtk-developers] Building VTK against llvm's libc++
Sean McBride
sean at rogue-research.com
Fri Jul 26 09:56:44 EDT 2013
On Tue, 26 Feb 2013 11:11:06 -0500, Sean McBride said:
>On Mon, 25 Feb 2013 15:46:55 -0500, Kyle Lutz said:
>
>>That's because there is no such function with the signature:
>>
>>operator<<(ostream&, ostream&)
>>
>>In fact, I'm not even sure what such a function would do. Commenting
>>out that line in vtkOStreamWrapper.h/cxx fixes the error.
>
>Removing that line and rebuilding with libstdc++ does indeed work, but
>with libc++ I get a perhaps-related error:
>
>VTK/Rendering/Core/vtkGenericVertexAttributeMapping.cxx:89:7: error:
>invalid operands to binary expression ('vtkOStreamWrapper' and
>'std::ostringstream'
> (aka 'basic_ostringstream<char>'))
> << attributeName);
> ^ ~~~~~~~~~~~~~
>VTK/Common/Core/vtkSetGet.h:477:35: note: expanded from macro
>'vtkWarningMacro'
> vtkWarningWithObjectMacro(this,x)
> ^
>VTK/Common/Core/vtkSetGet.h:525:22: note: expanded from macro
>'vtkWarningWithObjectMacro'
> << "): " x << "\n\n"; \
> ^
>
>From this code:
>
>void vtkGenericVertexAttributeMapping::AddMapping(
> int unit, const char* arrayName, int fieldAssociation,
> int component)
>{
> vtksys_ios::ostringstream attributeName;
> attributeName << unit;
>
> if (this->RemoveMapping(attributeName.str().c_str()))
> {
> vtkWarningMacro("Replacing existing mapping for attribute "
> << attributeName.str().c_str());
> }
>...
>
>Changing "attributeName" to "attributeName.str().c_str()" fixes it. Is
>that an appropriate change?
Reviving on old thread...
I just tried building VTK against llvm libc++ again, and this error is still there.
Does the following seem correct:
<http://review.source.kitware.com/12104>
Cheers,
--
____________________________________________________________
Sean McBride, B. Eng sean at rogue-research.com
Rogue Research www.rogue-research.com
Mac Software Developer Montréal, Québec, Canada
More information about the vtk-developers
mailing list