|
Boost Users : |
Subject: Re: [Boost-users] boost/parameter/keyword.hpp warning, TI compiler
From: Ian Bruntlett (ian.bruntlett_at_[hidden])
Date: 2010-12-02 14:39:04
Hi Kris,
If this message comes across as a style issue, please feel free to ignore
it.
In the past, when having to support different platforms, I've had to use
things like "#ifdef THIS_PLATFORM". However, I did it slightly different to
you.
Instead of having multiple #ifdef THIS_PLATFORM within a function, I would
wrap the entire function definition withing a single "#ifdef THIS_PLATFORM"
HTH,
Ian
On 2 December 2010 19:25, Krzysztof Czainski <1czajnik_at_[hidden]> wrote:
> 2010/12/2 Krzysztof Czainski <1czajnik_at_[hidden]>
>
> Hello,
>>
>> When I compile a file, that consists of only one line:
>>
>> #include <boost/parameter/keyword.hpp>
>>
>> with a Texas Intstruments compiler for DSP (cgtools-6.1.12); boost-1.45.0,
>> I get this warning:
>>
>> boost/parameter/aux_/void.hpp, line 20: warning #1369-D: static local
>> variables of extern inline function are not resolved to single copy. Not
>> ANSI C++ Compliant
>>
>> It referes to:
>> inline void_& void_reference()
>> {
>> static void_ instance;
>> return instance;
>> }
>>
>> In this particular context this warning seams harmless, so I would like to
>> suppress it. As far as I know, this compiler doesn't have a #pragma
>> warning(disable:1369) equivalent...
>>
>> I know how suppress this kind of warning globally, but I would not like
>> that, because in other contexts this is an important warning.
>>
>> Any ideas, how I could suppress this warning locally, in code perhaps?
>>
>> Cheers
>> Kris
>>
>
> A fix I came up with is modifying void.hpp like this:
>
> #ifdef __TI_COMPILER_VERSION__
> namespace { void_ void_instance = {}; }
> #endif // __TI_COMPILER_VERSION__
>
> inline void_& void_reference()
> {
> #ifdef __TI_COMPILER_VERSION__
> return void_instance;
> #else // __TI_COMPILER_VERSION__
>
> static void_ instance;
> return instance;
> #endif // __TI_COMPILER_VERSION__
> }
>
> Does anyone see any downsides?
>
> Regards,
> Kris
>
> _______________________________________________
> Boost-users mailing list
> Boost-users_at_[hidden]
> http://lists.boost.org/mailman/listinfo.cgi/boost-users
>
-- -- ACCU - Professionalism in programming - http://www.accu.org/
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net