| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 172114
|
| |
|
|
| |
llvm-svn: 172112
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Before:
@property(assign, getter = isEditable) BOOL editable;
Now:
@property(assign, getter=isEditable) BOOL editable;
It'd be nice if some Apple person could let me know if spaces are preferred
around '=' in @synthesize lines (see FIXME in the test).
llvm-svn: 172110
|
| |
|
|
|
|
|
| |
against the developer policy to include this sort of thing as SVN blame
already captures this in a far more fine-grained way.
llvm-svn: 172109
|
| |
|
|
| |
llvm-svn: 172108
|
| |
|
|
| |
llvm-svn: 172107
|
| |
|
|
| |
llvm-svn: 172105
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Restructured the checker so that it could easily find two new classes of
issues:
- when a class contains an invalidatable ivar, but no declaration of an
invalidation method
- when a class contains an invalidatable ivar, but no definition of an
invalidation method in the @implementation.
The second case might trigger some false positives, for example, when
the method is defined in a category.
llvm-svn: 172104
|
| |
|
|
| |
llvm-svn: 172103
|
| |
|
|
|
|
| |
// rdar://11577384
llvm-svn: 172102
|
| |
|
|
| |
llvm-svn: 172101
|
| |
|
|
|
|
| |
declarations.
llvm-svn: 172100
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Don't do this in Google style though:
http://google-styleguide.googlecode.com/svn/trunk/objcguide.xml#Protocols
Most other places (function declarations, variable declarations) still get
this wrong, and since this looks very similiar to template instantiations to
the lexer (`id <MyProtocol> a = ...`), it's going to be hard to fix in some
places.
llvm-svn: 172099
|
| |
|
|
|
|
|
| |
This is the last step of pure shuffling stuff around, the next step will
be the actual feature.
llvm-svn: 172098
|
| |
|
|
| |
llvm-svn: 172097
|
| |
|
|
| |
llvm-svn: 172096
|
| |
|
|
|
|
|
|
|
|
| |
Before:
@ -4.5
Now:
@-4.5
llvm-svn: 172095
|
| |
|
|
| |
llvm-svn: 172094
|
| |
|
|
|
|
|
|
| |
The first token in @implementation, @interface, and @protocol lines is now
marked TT_ObjCDecl, and lines starting with a TT_ObjCDecl token are now marked
LT_ObjCMethodDecl.
llvm-svn: 172093
|
| |
|
|
|
|
|
| |
This is the next step towards being able to configure multiple unwrapped
lines into one.
llvm-svn: 172092
|
| |
|
|
|
|
|
| |
an objectiveC object, use objc_exception_throw
to raise the exception. // rdar://12605907
llvm-svn: 172091
|
| |
|
|
| |
llvm-svn: 172090
|
| |
|
|
|
|
|
|
|
| |
-provide a "raw_ostream'ish" class to make it convenient to output logging info.
-use macros to automate a bit the logging functionality inside libclang functions
-when logging, print a stack trace if "LIBCLANG_LOGGING=2" environment is set.
-add logging to more functions.
llvm-svn: 172089
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This will be a new style requirement going forwards: a diagnostic can only
use the implicit InGroup<DiagGroup<"foo">> syntax if "foo" is not used by
any other diagnostics; as soon as it is, it needs an explicit group.
This also brings some stray "conversion" diagnostics into the
"Value Conversion Issue" category, instead of the more generic
"Semantic Issue" category. I consider this an improvement!
- warn_impcast_complex_scalar
- warn_impcast_float_integer
- warn_impcast_float_precision
- warn_impcast_integer_precision
- warn_impcast_vector_scalar
llvm-svn: 172088
|
| |
|
|
|
|
|
|
|
|
|
| |
Not only is this inefficient for TableGen, it's annoying for maintenance
when renaming warning flags (unusual) or adding those flags to a group
(more likely).
This uses the new fix-it infrastructure for LLVM's SourceMgr/SMDiagnostic,
as well as a few changes to TableGen to track more source information.
llvm-svn: 172087
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Like Clang's FixItHint, SMFixIt represents an insertion, replacement, or
removal of source text. One or more fix-its can be emitted as part of
a diagnostic, and will be printed below the source range line to show the
user how they can fix their code.
Currently, the only client of SMFixIt is clang-tblgen; thus, the tests for
this behavior live in clang/test/TableGen/tg-fixits.td. If/when SMFixIt is
adopted within LLVM itself, those tests should be moved to the LLVM suite.
llvm-svn: 172086
|
| |
|
|
|
|
|
|
|
|
| |
def foo : bar;
~~~
This allows us to produce more precise diagnostics about a certain
superclass, and even provide fixits.
llvm-svn: 172085
|
| |
|
|
| |
llvm-svn: 172084
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This prepares the code for single line optimizations and changes the
dependencies between single-line-formats to the indent of the first
token.
Conceptually, the first token is "between" the lines anyway, as the
whitespace for the first token includes the previous end-of-line, which
needs to be escaped when inside a preprocessor directive.
llvm-svn: 172083
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
When calling hasProperty() on an instruction inside a bundle, it should
always behave as if IgnoreBundle was passed, and just return properties
for the current instruction.
Only attempt to aggregate bundle properties whan asked about the bundle
header.
The assertion fires on existing ARM test cases without this fix.
llvm-svn: 172082
|
| |
|
|
|
|
|
| |
Use memcpy to do type punning instead of a cast. A cast or similar
operation through a union breaks strict aliasing rules.
llvm-svn: 172081
|
| |
|
|
| |
llvm-svn: 172080
|
| |
|
|
|
|
|
|
| |
BinaryOperator can be folded to an Undef, and we don't want to set NSW flags to undef vals.
PR14878
llvm-svn: 172079
|
| |
|
|
| |
llvm-svn: 172078
|
| |
|
|
| |
llvm-svn: 172077
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We now decide whether a newline should go before the closing brace
depending on whether a newline was inserted after the opening brace.
For example, we now insert a newline before '};' in:
static SomeClass WithALoooooooooooooooooooongName = {
100000000, \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\"
};
... while not inserting a newline here:
static SomeClass = { a, b, c, d, e, f, g, h, i, j,
looooooooooooooooooooooooooooooooooongname,
looooooooooooooooooooooooooooooong };
Also fixes the formating of (column limit 25):
int x = {
avariable,
b(alongervariable)
};
llvm-svn: 172076
|
| |
|
|
| |
llvm-svn: 172075
|
| |
|
|
|
|
|
|
|
| |
cpp11-migrate now contains the loop convert transform code and tests.
Cleaning up the old code/tests and updating build system files as
necessary.
Reviewers: klimek
llvm-svn: 172074
|
| |
|
|
|
|
|
|
|
| |
The purpose of this patch is to allow PredicateMethods to be set to something
like "isUImm<8>", calling a C++ template method to reduce code duplication. For
this to work, the PredicateMethod must be mangled into a valid C++ identifier
for insertion into an enum.
llvm-svn: 172073
|
| |
|
|
| |
llvm-svn: 172072
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: Uses DiagnosticsEngine to output diagnostics.
Reviewers: djasper, klimek
Reviewed By: djasper
CC: cfe-commits
Differential Revision: http://llvm-reviews.chandlerc.com/D278
llvm-svn: 172071
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We're now formatting (column limit 25):
int x = {
avariable,
b(alongervariable) };
This also fixes:
Aaa({
int i;
}, aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa(bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb,
ccccccccccccccccc));
... where we would previously break after the '},'.
Putting the closing curly into an extra line when there's a break
directly after the first curly will be done in a subsequent patch.
Paired with djasper.
llvm-svn: 172070
|
| |
|
|
| |
llvm-svn: 172069
|
| |
|
|
| |
llvm-svn: 172068
|
| |
|
|
|
|
|
| |
void f() {}
now gets formatted in one line.
llvm-svn: 172067
|
| |
|
|
| |
llvm-svn: 172066
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before: int (^myBlock) (int) = ^(int num) {}
A<void ()>;
int (*b)(int);
After: int (^myBlock)(int) = ^(int num) {}
A<void()>;
int(*b)(int);
For function types and function pointer types, this patch only makes
the behavior consistent (for types that are keywords and other types).
For the latter function pointer type declarations, we'll probably
want to add a space after "int".
Also added LangOpts.Bool = 1, so we handle "A<bool()>" appropriately
Moved the LangOpts-settings to a public place for use by tests
and clang-format binary.
llvm-svn: 172065
|
| |
|
|
| |
llvm-svn: 172064
|
| |
|
|
| |
llvm-svn: 172063
|
| |
|
|
|
|
| |
the backend if hard float ABI is selected under -mips16 mode.
llvm-svn: 172062
|