Le 18/11/2015 22:28, Bill Lorensen a écrit :
> I think itkCheck might be better.

Here check() is a function not a macro.
The usual ITK naming convention would require Check, not itkCheck.

The fact some apple code has hijacked check instead of __check or _Check
is a very poor choice. We should not have had any problem with check()
(if we except KWStyle which, oddly, missed it)

Regards,
-- 
Luc Hermitte

> 
> On Wed, Nov 18, 2015 at 4:26 PM, Matt McCormick
> <matt.mccorm...@kitware.com> wrote:
>> Hi Seun,
>>
>> Thanks for discussing the issue.
>>
>> I think a good name would be "Check".  Could you please submit a patch? [1]
>>
>> Thanks,
>> Matt
>>
>> [1] http://www.itk.org/Wiki/ITK/Git/Develop
>>
>>
>> On Wed, Nov 18, 2015 at 4:08 PM, Seun Odutola <s...@rogue-research.com> 
>> wrote:
>>> Hi Everyone,
>>>
>>>     Just wanted to bring to your attention a problem I faced working on a 
>>> project using ITK 4.9 on Mac OS X 10.11, Apple declares a macro called 
>>> 'check’  that takes just a parameter and apparently there is a name clash 
>>> with a typedef of ITK’s (see itkPromoteType.h).
>>>
>>> // snippet
>>> template <typename TA, typename TB> struct PromoteType
>>> {
>>>   static TA a;
>>>   static TB b;
>>>
>>>   // Aimed at supporting overloads
>>>   template <typename T> static Details::Identity<1>::Type& check(typename 
>>> Details::SizeToType<1,  TA, TB>::Type, T);
>>>   template <typename T> static Details::Identity<2>::Type& check(typename 
>>> Details::SizeToType<2,  TA, TB>::Type, T);
>>>
>>>   // Common numeric types
>>>   static Details::Identity<3 >::Type& itkcheck(typename 
>>> Details::SizeToType<3,  TA, TB>::Type, int);
>>>
>>> // end of snippet
>>>
>>>  I set about trying to fix this issue and on renaming the ‘check’ in my 
>>> case I chose ‘itkcheck’, rebuilt ITK and ran my project everything worked 
>>> fine.
>>>
>>> My proposal to the team if indeed I’m right is the above typedef need 
>>> renaming as we can’t change Apple’s implementation so it’s most likely ITK 
>>> will need to fix this. Currently renaming the check typedef works fine.
>>> Thanks
>>>
>>> Regards Seun
>>>
>>> p.s: I could submit a patch if that’s fine but I would like to know what 
>>> name the ITK team would prefer to be substituted for the ‘check' typedef 
>>> above.
>>> _______________________________________________
>>> 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://public.kitware.com/mailman/listinfo/insight-developers
>> _______________________________________________
>> 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://public.kitware.com/mailman/listinfo/insight-developers
> 
> 
> 

_______________________________________________
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://public.kitware.com/mailman/listinfo/insight-developers

Reply via email to