[Insight-developers] NrrdIO missing name magling

Matt McCormick matt.mccormick at kitware.com
Tue Nov 20 10:08:53 EST 2012


Hi Brad,

Gordon found that unnecessary mangles were in itk_NrrdIO_mangle.h, and
they were purposely removed.

Thanks,
Matt

On Tue, Nov 20, 2012 at 2:47 PM, Bradley Lowekamp
<blowekamp at mail.nih.gov> wrote:
> Hello,
>
> I was looking at suppressing some new Valgrind error on SimpleITK (then my
> new ITK valgrind build), that sprung up after the NrrdIO update:
>
> http://open.cdash.org/viewDynamicAnalysis.php?buildid=2673721
>
> I had these suppressed before. But they came back... Looking at them closer
> I think it reveals a problem with certain symbols what were mangled before
> the update, but now are not. For example the following valgrind error:
>
> b>UMC</b> ==27272== Conditional jump or move depends on uninitialised
> value(s)
> ==27272==    at 0x1E2C9D27: _nrrdReadNrrdParse_space_directions
> (parseNrrd.c:550)
> ==27272==    by 0x1E2D3881: _nrrdFormatNRRD_read (formatNRRD.c:469)
> ==27272==    by 0x1E2CEB3C: itk__nrrdRead (read.c:441)
> ==27272==    by 0x1E2CECED: itk_nrrdRead (read.c:482)
> ==27272==    by 0x1E2CF03D: itk_nrrdLoad (read.c:628)
> ==27272==    by 0x1E094C2B: itk::NrrdImageIO::ReadImageInformation()
> (itkNrrdImageIO.cxx:250)
> ==27272==    by 0x553AE8A:
> itk::simple::ImageReaderBase::GetImageIOBase(std::string const&amp;)
> (sitkImageReaderBase.cxx:55)
> ==27272==    by 0x553AF13:
> itk::simple::ImageReaderBase::GetPixelIDFromImageIO(std::string const&amp;,
> int&amp;, unsigned int&amp;) (sitkImageReaderBase.cxx:67)
> ==27272==    by 0x52C8A93: itk::simple::ImageFileReader::Execute()
> (sitkImageFileReader.cxx:59)
> ==27272==    by 0x6E17EF: BasicFilters_ConstantPad_more_Test::TestBody()
> (sitkConstantPadImageFilterTest.cxx:171)
> ==27272==    by 0xA518C3: void
> testing::internal::HandleSehExceptionsInMethodIfSupported&lt;testing::Test,
> void&gt;(testing::Test*, void (testing::Test::*)(), char const*)
> (gtest-all.cc:3394)
> ==27272==    by 0xA4CF0D: void
> testing::internal::HandleExceptionsInMethodIfSupported&lt;testing::Test,
> void&gt;(testing::Test*, void (testing::Test::*)(), char const*)
> (gtest-all.cc:3430)
> ==27272==    by 0xA3927D: testing::Test::Run() (gtest-all.cc:3466)
> ==27272==    by 0xA39AB7: testing::TestInfo::Run() (gtest-all.cc:3642)
> ==27272==    by 0xA3A0E3: testing::TestCase::Run() (gtest-all.cc:3749)
> ==27272==    by 0xA3F466: testing::internal::UnitTestImpl::RunAllTests()
> (gtest-all.cc:5541)
> ==27272==    by 0xA52C38: bool
> testing::internal::HandleSehExceptionsInMethodIfSupported&lt;testing::internal::UnitTestImpl,
> bool&gt;(testing::internal::UnitTestImpl*, bool
> (testing::internal::UnitTestImpl::*)(), char const*) (gtest-all.cc:3394)
> ==27272==    by 0xA4DC84: bool
> testing::internal::HandleExceptionsInMethodIfSupported&lt;testing::internal::UnitTestImpl,
> bool&gt;(testing::internal::UnitTestImpl*, bool
> (testing::internal::UnitTestImpl::*)(), char const*) (gtest-all.cc:3430)
> ==27272==    by 0xA3DFF0: testing::UnitTest::Run() (gtest-all.cc:5178)
> ==27272==    by 0x58C0D4: main (SimpleITKUnitTestDriver.cxx:50)
>
>
>
> The first two symbols there use to be proceeded with itk. So I don't think
> they are correctly mangled. The last commit to the file itk_NrrdIO_magle.h
> reveal a suspiciously large number of symbols being removed:
>
> http://itk.org/gitweb?p=ITK.git;a=commitdiff;h=a264fff5a637a223b54d4e1aaa425411a9cee617#patch36
>
> I am guessing that the mangle perl script was run on OSX, and needs to be
> also run on linux to be complete. If anyone else know more about this please
> speak up.
>
> Thanks,
> Brad
>
> _______________________________________________
> Powered by www.kitware.com
>
> Visit other Kitware open-source projects at
> http://www.kitware.com/opensource/opensource.html
>
> Kitware offers ITK Training Courses, for more information visit:
> http://kitware.com/products/protraining.php
>
> Please keep messages on-topic and check the ITK FAQ at:
> http://www.itk.org/Wiki/ITK_FAQ
>
> Follow this link to subscribe/unsubscribe:
> http://www.itk.org/mailman/listinfo/insight-developers
>


More information about the Insight-developers mailing list