llvm-project/clang/test/CXX
Ted Kremenek b79ee57080 Implemented delayed processing of 'unavailable' checking, just like with 'deprecated'.
Fixes <rdar://problem/15584219> and <rdar://problem/12241361>.

This change looks large, but all it does is reuse and consolidate
the delayed diagnostic logic for deprecation warnings with unavailability
warnings.  By doing so, it showed various inconsistencies between the
diagnostics, which were close, but not consistent.  It also revealed
some missing "note:"'s in the deprecated diagnostics that were showing
up in the unavailable diagnostics, etc.

This change also changes the wording of the core deprecation diagnostics.
Instead of saying "function has been explicitly marked deprecated"
we now saw "'X' has been been explicitly marked deprecated".  It
turns out providing a bit more context is useful, and often we
got the actual term wrong or it was not very precise
 (e.g., "function" instead of "destructor").  By just saying the name
of the thing that is deprecated/deleted/unavailable we define
this issue away.  This diagnostic can likely be further wordsmithed
to be shorter.

llvm-svn: 197627
2013-12-18 23:30:06 +00:00
..
basic Added warning on structures/unions that are empty or contain only 2013-11-14 02:13:03 +00:00
class Implement DR1460: fix handling of default initializers in unions; don't allow 2013-12-10 08:25:00 +00:00
class.access Revert "Don't require -re suffix on -verify directives with regexes." 2013-12-14 01:07:05 +00:00
class.derived Implement final resolution of DR1402: implicitly-declared move operators that 2013-11-04 01:48:18 +00:00
conv Prior to adding the new "expected-no-diagnostics" directive to VerifyDiagnosticConsumer, make the necessary adjustment to 580 test-cases which will henceforth require this new directive. 2012-10-19 12:44:48 +00:00
dcl.dcl Implemented delayed processing of 'unavailable' checking, just like with 'deprecated'. 2013-12-18 23:30:06 +00:00
dcl.decl Implement DR482: namespace members can be redeclared with a qualified name 2013-12-05 07:51:02 +00:00
drs Revert "Don't require -re suffix on -verify directives with regexes." 2013-12-14 01:07:05 +00:00
except Take cv-qualifiers on fields of class type into account when determining 2013-11-25 07:07:05 +00:00
expr Require the type of a by-copy capture to be complete before creating its field. 2013-12-18 23:02:36 +00:00
lex Add a triple to unbreak buildbots where size_t is not 'unsigned long'. 2013-10-07 22:58:25 +00:00
over Don't produce duplicate notes if we have deduction failure notes when resolving 2013-08-14 00:00:44 +00:00
special Implemented delayed processing of 'unavailable' checking, just like with 'deprecated'. 2013-12-18 23:30:06 +00:00
stmt.stmt Add -Wdeprecated warnings and fixits for things deprecated in C++11: 2013-06-13 02:02:51 +00:00
temp Revert "Don't require -re suffix on -verify directives with regexes." 2013-12-14 01:07:05 +00:00