[Insight-developers] Wrapping test failure related to testing macros

Bradley Lowekamp blowekamp at mail.nih.gov
Sun Jun 24 20:52:23 EDT 2012


This problem results in a link time error on macs:

http://open.cdash.org/viewBuildError.php?buildid=2389212

I looked at the XML out put of gcc_xml, and it includes these methods even though LEGACY_REMOVE is turned on.

I agree with Hans that we can not support WrapITK with too many permutations, as it is currently challenging keeping it going as it is.

Brad

On Jun 23, 2012, at 3:05 PM, Matt McCormick wrote:

> Hey Hans,
> 
> Thanks a lot for your input.  I will let the current build finish,
> then start again with ITK_LEGACY_REMOVE=OFF and see what we get.
> 
> Thanks,
> Matt
> 
> On Sat, Jun 23, 2012 at 12:26 PM, Johnson, Hans J
> <hans-johnson at uiowa.edu> wrote:
>> Matt,
>> 
>> Whoa Š that probably does have something to do with it.  Seems very
>> suspicious.
>> 
>> NOTE:  If cmake ITK_LEGACY_REMOVE:BOOL=OFF, then it is undefined in
>> itkConfigure.h.
>> 
>> I think that perhaps we need to remove the combinatorial interactions
>> between wrapping and legacy by only supporting wrapping if
>> ITK_REMOVE_LEGACY:BOOL=ON.
>> 
>> This may simplify the debugging and will prevent us from chasing these
>> corner cases trying to make code that "should" have been removed many
>> years ago.  It's upsetting to me that we are tracking down an issue in
>> code that has been deprecated for 7 years!
>> 
>> 2b536fbe (Stephen Aylward 2005-03-09 11:46:14 -0500 164)    * \deprecated
>> Please use GetInverseTransform and then call the forward
>> 2b536fbe (Stephen Aylward 2005-03-09 11:46:14 -0500 165)    *   transform
>> using the result.
>> 
>> 
>> ====================
>> If we simply remove this function (as it should have been done during the
>> ITKv4 refactoring stage), this problem would not exist.
>> 
>> 
>> Hans
>> 
>> 
>> 
>> On 6/23/12 9:37 AM, "Matt McCormick" <matt.mccormick at kitware.com> wrote:
>> 
>>> Hi Hans,
>>> 
>>> Thanks for the feedback.  I will try a fresh build and report back.
>>> 
>>> ITK_LEGACY_REMOVE is OFF per default.
>>> 
>>> I see in itkMacro.h:
>>> 
>>> #if defined( ITK_LEGACY_REMOVE )
>>> // Remove legacy methods completely.  Put a bogus declaration in
>>> // place to avoid stray semicolons because this is an error for some
>>> // compilers.  Using a class forward declaration allows any number
>>> // of repeats in any context without generating unique names.
>>> #define itkLegacyMacro(method) class itkLegacyMethodRemoved /* no ';' */
>>> #elif defined( ITK_LEGACY_SILENT ) || defined( ITK_LEGACY_TEST ) ||
>>> defined( CSWIG )
>>> // Provide legacy methods with no warnings.
>>> #define itkLegacyMacro(method) method
>>> 
>>> so, does "|| defined( CSWIG )" have something to do with it?
>>> 
>>> Thanks,
>>> Matt
>>> 
>>> On Sat, Jun 23, 2012 at 9:07 AM, Johnson, Hans J <hans-johnson at uiowa.edu>
>>> wrote:
>>>> Matt,
>>>> 
>>>> 
>>>> _ZNK3itk16Rigid3DTransformIdE13BackTransformERKNS_15CovariantVectorIdLj3E
>>>> EE
>>>>                               ^^^^^^^^^^^^^
>>>> 
>>>> 
>>>> The use of BackTransform is deprecated.
>>>> *
>>>>   * \deprecated Please use GetInverseTransform and then call the forward
>>>>   *   transform using the result.
>>>> 
>>>> 
>>>> I can not find where this is being picked up?  Is ITK_LEGACY_REMOVE
>>>> turned
>>>> ON or OFF?
>>>> 
>>>> My guess is one of the following:
>>>>        1) A clean build is needed.
>>>>        2) The automatic wrapping system needs to know the status of
>>>> ITK_LEGACY_REMOVE
>>>>        3) The test needs to be re-written to use GetInverseTransform
>>>> 
>>>> Hans
>>>> 
>>>> 
>>>> 
>>>> 
>>>> On 6/23/12 12:06 AM, "Matt McCormick" <matt.mccormick at kitware.com>
>>>> wrote:
>>>> 
>>>>> Hi Hans,
>>>>> 
>>>>> Do you know how to fix a test failure like this?:
>>>>> 
>>>>>   http://open.cdash.org/testDetails.php?test=150903320&build=2381601
>>>>> 
>>>>> It appears to be related to the Legacy macros.
>>>>> 
>>>>> Thanks,
>>>>> Matt
>>>> 
>>>> 
>>>> 
>>>> ________________________________
>>>> Notice: This UI Health Care e-mail (including attachments) is covered
>>>> by the Electronic Communications Privacy Act, 18 U.S.C. 2510-2521, is
>>>> confidential and may be legally privileged.  If you are not the intended
>>>> recipient, you are hereby notified that any retention, dissemination,
>>>> distribution, or copying of this communication is strictly prohibited.
>>>> Please reply to the sender that you have received the message in error,
>>>> then delete it.  Thank you.
>>>> ________________________________
>> 
>> 
>> 
>> ________________________________
>> Notice: This UI Health Care e-mail (including attachments) is covered by the Electronic Communications Privacy Act, 18 U.S.C. 2510-2521, is confidential and may be legally privileged.  If you are not the intended recipient, you are hereby notified that any retention, dissemination, distribution, or copying of this communication is strictly prohibited.  Please reply to the sender that you have received the message in error, then delete it.  Thank you.
>> ________________________________
> _______________________________________________
> 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