> On Jan. 8, 2020, 1:28 p.m., Benjamin Bannier wrote:
> > 3rdparty/stout/include/stout/attributes.hpp
> > Lines 52 (patched)
> > <https://reviews.apache.org/r/71971/diff/1/?file=2199431#file2199431line53>
> >
> > This makes `STOUT_DEPRECATED` a noop on all current clang versions. We
> > could add another `TODO` here to figure out what until which release clang
> > emitted the warning (I did not see it with clang-10.0.0).
I think clangs behaviour here might be arguably correct, after re-reading the
timeline C++11 only came with the `noreturn` and `carries_dependency`
attributes, and `deprecated` was indeed only accepted in C++14.
I think the correct way to handle this might be to introduce another case like
this:
#elif defined(__clang__) && STOUT_HAS_CPP_ATTRIBUTE(deprecated)
# define STOUT_DEPRECATED __attribute__((deprecated))
#endif
What do you think?
- Benno
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/71971/#review219174
-----------------------------------------------------------
On Jan. 8, 2020, 12:15 p.m., Benno Evers wrote:
>
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/71971/
> -----------------------------------------------------------
>
> (Updated Jan. 8, 2020, 12:15 p.m.)
>
>
> Review request for mesos and Benjamin Bannier.
>
>
> Repository: mesos
>
>
> Description
> -------
>
> Added a special case for the `[[deprecated]]` attribute to
> handle configurations where clang claims to support this
> attribute but also emits a warning that it should not be used.
>
>
> Diffs
> -----
>
> 3rdparty/stout/include/stout/attributes.hpp
> 54d438dca56d5346c58eb28eaeda7916a3a62076
>
>
> Diff: https://reviews.apache.org/r/71971/diff/1/
>
>
> Testing
> -------
>
> Internal unit test run in progress.
>
>
> Thanks,
>
> Benno Evers
>
>