C++1z now allows attributes on namespace and enumerators. We already
supported deprecated enumerators, but we do not support namespaces.
This patch addresses that.

A few notes:

It was decided that the deprecated attribute only applies to things
with names (this makes reporting diagnostics a bit more sane), so this
patch disallows deprecating an anonymous namespace.

Since the declaration context can now cause deprecations, this
requires updating some other test cases. Several of them now receive
two notes -- one for the declaration of a variable of enumerator type,
another for the use of the enumerator.

There are still improvements to be made for situations where a class
is effectively providing a namespace (static members, inner types,
etc).

~Aaron

Attachment: deprecated.patch
Description: Binary data

_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to