[waffle] [PATCH 01/17] include: Define macro WAFFLE_DEPRECATED_1_06

Emil Velikov emil.l.velikov at gmail.com
Wed Jan 21 05:58:03 PST 2015


On 20 January 2015 at 18:50, Chad Versace <chad.versace at intel.com> wrote:
> On 01/15/2015 04:29 AM, Emil Velikov wrote:
>> On 4 January 2015 at 22:02, Chad Versace <chad.versace at intel.com> wrote:
>>> This macro annotates symbols as deprecated in Waffle 1.6. The compiler
>>> emits deprecation warnings only if the user enables the feature macro
>>> for the Waffle 1.6 API.
>>>
>>> Signed-off-by: Chad Versace <chad.versace at intel.com>
>>> ---
>>>  include/waffle/waffle.h | 12 ++++++++++++
>>>  1 file changed, 12 insertions(+)
>>>
>>> diff --git a/include/waffle/waffle.h b/include/waffle/waffle.h
>>> index e04b23f..afec630 100644
>>> --- a/include/waffle/waffle.h
>>> +++ b/include/waffle/waffle.h
>>> @@ -36,6 +36,18 @@
>>>  extern "C" {
>>>  #endif
>>>
>>> +#if defined(__GNUC__) && ((__GNUC__ * 100 + __GNUC_MINOR__) >= 301)
>>> +#    define WAFFLE_DEPRECATED __attribute__((deprecated))
>> For MSVC one can use the following. Although I'm thinking that the
>> compiler will complain as the function declaration will differ from
>> the definition.
>
> If I change the definition of WAFFLE_DEPRECATED as you suggest, and
> also annotate the function definitions, will that eliminate the MSVC
> warnings?
>
After a quick test it seems that only the following two files are
needed. There are no warnings about the mismatch of the function
declaration and definition.

>> #elif defined(_MSC_VER)
>> #    define WAFFLE_DEPRECATED __declspec(deprecated)
>>
>> Adding MSVC compat can be left as a follow up if you prefer.
>
> I prefer to extend the WAFFLE_DEPRECATED for MSVC in a follow-up
> patch. It shouldn't cause any trouble to defer it a little bit.
>
Considering my above comment I would personally shove those in, yet
feel free to split it as a follow up commit.

-Emil


More information about the waffle mailing list