| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
| |
manually quote. No functional changes intended.
llvm-svn: 198076
|
|
|
|
|
|
| |
semantic attributes easier (and not require hard-coded strings). This requires a getSpelling() function on the Attr class, which is table-driven. Updates a handful of cases where a hard-coded string was being used to test the functionality out. Updating associated test cases for the improved quoting.
llvm-svn: 198055
|
|
|
|
|
|
| |
name will be quoted in the diagnostic. Manually added some quotes to a diagnostic for consistency. Updated the test cases as appropriate.
llvm-svn: 198054
|
|
|
|
|
|
|
|
| |
coverage. Parameterized the diagnostic, and made it more consistent with other attribute diagnostic wordings. Added test coverage.
Since this warning was generalized, it was also given a sensible warning group flag and the corresponding test was updated to reflect this.
llvm-svn: 198053
|
|
|
|
|
|
| |
StringRefs. No functional changes intended.
llvm-svn: 198051
|
|
|
|
| |
llvm-svn: 198050
|
|
|
|
|
|
| |
changes intended.
llvm-svn: 198047
|
|
|
|
|
|
|
|
| |
has already been determined to be a ValueDecl by virtue of the attribute subjects.
Added some test case coverage as well.
llvm-svn: 198046
|
|
|
|
| |
llvm-svn: 197911
|
|
|
|
|
|
| |
but silently ignored. Most of this feature was already reverted in June 2012 (r159016), this just cleans up the pieces left over.
llvm-svn: 197866
|
|
|
|
|
|
| |
handler. This removes a silent dropping of the attributes when they are duplicated on a Decl.
llvm-svn: 197864
|
|
|
|
| |
llvm-svn: 197730
|
|
|
|
|
|
| |
is unused.
llvm-svn: 197729
|
|
|
|
|
|
| |
change intended -- this only replaces Boolean uses of getAttr.
llvm-svn: 197648
|
|
|
|
|
|
| |
Since there were no test cases for the attribute, some have been added. This promptly demonstrated a bug with the semantic handling, which is also fixed.
llvm-svn: 197637
|
|
|
|
|
|
| |
has special treatment. Also fixes a minor bug where the attributes were being parsed as though they were GNU-style attributes when they were in fact keyword attributes.
llvm-svn: 197629
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
'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
|
|
|
|
|
|
|
|
| |
are used on non-kernel functions.
Reviewed by Aaron over IRC!
llvm-svn: 197243
|
|
|
|
|
|
| |
more consistent with other attributes.
llvm-svn: 197104
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
'objc_protocol_requires_explicit_implementation'.
That's a mouthful, and not necessarily the final name. This also
reflects a semantic change where this attribute is now on the
protocol itself instead of a class. This attribute will require
that a protocol, when adopted by a class, is explicitly implemented
by the class itself (instead of walking the super class chain).
Note that this attribute is not "done". This should be considered
a WIP.
llvm-svn: 196955
|
|
|
|
|
|
|
|
| |
objc_designated_initializer
attribute is acceptable.
llvm-svn: 196644
|
|
|
|
|
|
| |
Microsoft extensions we do not currently support. Note that __w64 has been deprecated in MSVC since 2008.
llvm-svn: 196592
|
|
|
|
|
|
|
|
| |
which specifies couple of (optional) method selectors
for bridging a CFobject to or from an ObjectiveC
object. This is wip. // rdsr://15499111
llvm-svn: 196408
|
|
|
|
|
|
|
|
|
|
| |
designated initializers of an interface.
If the interface declaration does not have methods marked as designated
initializers then the interface inherits the designated initializers of
its super class.
llvm-svn: 196315
|
|
|
|
|
|
| |
It only applies to methods of init family in an interface declaration.
llvm-svn: 196314
|
|
|
|
|
|
| |
reduces the amount of duplicate code in the handler. No functional change intended.
llvm-svn: 196165
|
|
|
|
|
|
| |
attribute kind test were superfluous. No functional change intended.
llvm-svn: 196162
|
|
|
|
|
|
| |
attribute arguments (the common attribute handler already does this). Switching to use the simple attribute handler. No functional change intended.
llvm-svn: 196155
|
|
|
|
|
|
| |
options to test in tablegen.
llvm-svn: 196138
|
|
|
|
|
|
| |
cf_audited_transfer and cf_unknown_transfer attributes into separate helper methods for simplicity. No functional changes intended.
llvm-svn: 196126
|
|
|
|
|
|
| |
diagnostic involved to be more accurate -- for C++ code, it will now report that weak applies to variables, functions or classes. Added additional test case for this.
llvm-svn: 196120
|
|
|
|
|
|
| |
__w64 specifically. Renamed and removed some unused code. No functional change intended.
llvm-svn: 196116
|
|
|
|
| |
llvm-svn: 196110
|
|
|
|
|
|
| |
functional change intended.
llvm-svn: 196107
|
|
|
|
|
|
| |
Affects: guarded_var, pt_guarded_var, guarded_by, pt_guarded_by, acquired_after and acquired_before. No functional change intended.
llvm-svn: 196105
|
|
|
|
|
|
| |
functional change intended.
llvm-svn: 195964
|
|
|
|
|
|
| |
attribute. No functional change intended.
llvm-svn: 195963
|
|
|
|
|
|
| |
the custom subject for the ibaction attribute.
llvm-svn: 195960
|
|
|
|
|
|
| |
the semantic checking was already automated.
llvm-svn: 195866
|
|
|
|
|
|
| |
diagnostic for attribute subjects. In turn, this allows the Subjects to be enabled for some more attributes and improves diagnostics. Updated a test case based on the improved diagnostic.
llvm-svn: 195864
|
|
|
|
|
|
| |
test cases to be updated because the original diagnostic was about applying to methods as well as functions, but the semantic checking disallowed methods.
llvm-svn: 195862
|
|
|
|
|
|
| |
case. Previously, would issue a "warning ignored" diagnostic instead of the more specific "only applies to."
llvm-svn: 195851
|
|
|
|
| |
llvm-svn: 195850
|
|
|
|
|
|
| |
a Decl so they all go through a common interface. No functional change intended.
llvm-svn: 195848
|
|
|
|
| |
llvm-svn: 195846
|
|
|
|
|
|
|
|
|
|
|
|
| |
attribute subjects. This makes some modifications to the way subjects are listed in Attr.td, and updates the attr emitter to handle the new constructs.
I have disabled some attribute subject lines on purpose in Attr.td;
this part is a WIP with the goal being to restore those subjects
incrementally. By commenting them out, it leaves the original behavior
the same as before for those attributes and so those are not
functionality changes.
llvm-svn: 195841
|
|
|
|
|
|
|
|
| |
look at the attribute spelling instead. The 'ownership_*' attributes should
probably be split into separate *Attr classes, but that's more than I wanted to
do here.
llvm-svn: 195805
|
|
|
|
|
|
| |
intended.
llvm-svn: 195770
|
|
|
|
|
|
|
|
| |
Attr.td. Also updated the related testcase.
Reviewed by Dmitri Gribenko.
llvm-svn: 195675
|
|
|
|
| |
llvm-svn: 195589
|