- Feb 05, 2013
-
-
Douglas Gregor authored
llvm-svn: 174441
-
Anna Zaks authored
(void*)p. Addresses the false positives similar to the test case. llvm-svn: 174436
-
Anna Zaks authored
llvm-svn: 174435
-
Anna Zaks authored
llvm-svn: 174434
-
Jordan Rose authored
This is a text file with Markdown-ish formatting because we haven't decided where analyzer internal documents should go, but it's probably better to have this in source control than sitting on my local drive forever. llvm-svn: 174398
-
Argyrios Kyrtzidis authored
rdar://13140508 llvm-svn: 174386
-
Argyrios Kyrtzidis authored
since only one of them is allowed in command-line, process them separately. Otherwise, if more than one is specified in the command-line, one is processed normally and the others are going to be treated and included as header files. Related to radar://13140508 llvm-svn: 174385
-
Nico Weber authored
llvm-svn: 174384
-
Daniel Jasper authored
We can now format stuff like: - (void)doSomethingWith:(GTMFoo *)theFoo rect:(NSRect)theRect interval:(float)theInterval { [myObject doFooWith:arg1 // name:arg2 error:arg3]; } This seems to fix everything mentioned in llvm.org/PR14939. llvm-svn: 174364
-
Daniel Jasper authored
Before: f(aaaaaaaaaaaaaaaaaaaa, aaaaaaaaaaaaaaaaaaaa, aaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaa); aaaaaaa(aaaaaaaaaaaaa, aaaaaaaaaaaaa, aaaaaaaaaaaaa(aaaaaaaaaaaaaaaaa, aaaaaaaaaaaaaaaa)); After: f(aaaaaaaaaaaaaaaaaaaa, aaaaaaaaaaaaaaaaaaaa, aaaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaaa); aaaaaaa(aaaaaaaaaaaaa, aaaaaaaaaaaaa, aaaaaaaaaaaaa(aaaaaaaaaaaaaaaaa, aaaaaaaaaaaaaaaa)); llvm-svn: 174363
-
Daniel Jasper authored
In preprocessor definitions, we would not parse all the tokens and thus not annotate them anymore. This led to a wrong formatting of comments in google style: #endif // HEADER_GUARD -- requires two spaces llvm-svn: 174361
-
Arnaud A. de Grandmaison authored
llvm-svn: 174359
-
NAKAMURA Takumi authored
llvm-svn: 174353
-
Eric Christopher authored
the DWARF5 split dwarf proposal. llvm-svn: 174349
-
Eric Christopher authored
llvm-svn: 174348
-
Ted Kremenek authored
Revert "Remove sparse text on diagnostic options. These are not really documented anywhere, and they really aren't for normal users." I changed my mind. We should just document these in the man page. llvm-svn: 174344
-
Ted Kremenek authored
llvm-svn: 174342
-
Nick Lewycky authored
claims it will improve performance. llvm-svn: 174341
-
Richard Smith authored
vector initialization. Patch by John Stratton! llvm-svn: 174339
-
Ted Kremenek authored
Remove sparse text on diagnostic options. These are not really documented anywhere, and they really aren't for normal users. llvm-svn: 174338
-
Richard Smith authored
llvm-svn: 174337
-
- Feb 04, 2013
-
-
Manuel Klimek authored
We found that findAll has been implemented incorrectly multiple times by various people using the matchers. To prevent further wasted development effort, it makes sense to add it as convenience matcher implemented as eachOf(m, forEachDescendant(m)). This patch also updates the docs with the new matchers. llvm-svn: 174320
-
Manuel Klimek authored
eachOf gives closure on the forEach and forEachDescendant matchers. Before, it was impossible to implement a findAll matcher, as matching the node or any of its descendants was not expressible (since anyOf only triggers the first match). llvm-svn: 174315
-
Daniel Jasper authored
This is a follow up to r174309 to actually make it work. llvm-svn: 174314
-
Daniel Jasper authored
If there are string literals on either side of a '<<', chances are high that they represent logically separate concepts. Otherwise, the author could just have just a single literal (possible split over multiple lines). So, we can now nicely format things like: cout << "somepacket = {\n" << " val a = " << ValueA << "\n" << " val b = " << ValueB << "\n" << "}"; llvm-svn: 174310
-
Daniel Jasper authored
We can now (even in non-bin-packing modes) format: someFunction(1, /* comment 1 */ 2, /* comment 2 */ 3, /* comment 3 */ aaa); llvm-svn: 174309
-
Daniel Jasper authored
Two minor changes: * Slight penalty for breaking at "," as opposed to ";". * Don't apply bin-packing rules to for-loops. Before: for (int aaaaaa = aaaaaaaaaa; aaaaaa < bbbbbbbb; ++aaaaaa, ++ccccccccccccccc) {} After: for (int aaaaaa = aaaaaaaaaa; aaaaaa < bbbbbbbb; ++aaaaaa, ++ccccccccccccccc) {} llvm-svn: 174308
-
Daniel Jasper authored
This combines several changes: * Calculation token type (e.g. for * and &) in the AnnotatingParser. * Calculate the scope binding strength in the AnnotatingParser. * Let <> and [] scopes bind stronger than () and {} scopes. * Add minimal debugging output. llvm-svn: 174307
-
NAKAMURA Takumi authored
clang/Analysis: Fix r174245, a valgrind error in AnalysisDeclContext::getBody(bool &IsAutosynthesized), to initialize IsAutosynthesized explicitly. llvm-svn: 174303
-
Dmitri Gribenko authored
This is an improvement of r173630, that handles the following case: struct VirualDestrClass { VirualDestrClass(int arg); virtual ~VirualDestrClass(); }; struct ConstrWithCleanupsClass { ConstrWithCleanupsClass(const VirualDestrClass& cplx = VirualDestrClass(42)); }; ConstrWithCleanupsClass cwcNoArg; That was printed as: ConstrWithCleanupsClass cwcNoArg(); llvm-svn: 174296
-
- Feb 03, 2013
-
-
Benjamin Kramer authored
llvm-svn: 174294
-
Benjamin Kramer authored
This can yield dramatic speedups of dynamic_cast for simple inheritance trees, at least with libsupc++. Neither libcxxabi nor libcxxrt make use of this hint currently, it was never implemented because clang didn't support it. There was some concern about the number of class hierarchy walks this change introduces. If it turns out to be an issue we can add caching either at the cast pair level or even deeper, but we also do a lot of walks in Sema so this codepath is probably fairly optimized already. llvm-svn: 174293
-
Benjamin Kramer authored
llvm-svn: 174292
-
Daniel Jasper authored
We can now format: SomeArrayOfSomeType a = { { { 1, 2, 3 } }, { { 1, 2, 3 } }, { { 111111111111111111111111111111, 222222222222222222222222222222, 333333333333333333333333333333 } }, { { 1, 2, 3 } }, { { 1, 2, 3 } } }; Before, we did strange things there. llvm-svn: 174291
-
Dmitri Gribenko authored
llvm-svn: 174290
-
Benjamin Kramer authored
This allows the optimizer to CSE dynamic_casts. llvm-svn: 174289
-
Dmitri Gribenko authored
llvm-svn: 174287
-
Dmitri Gribenko authored
This removes quite a few 'cxstring::' qualifications where they are obvious. llvm-svn: 174286
-
Dmitri Gribenko authored
llvm-svn: 174285
-
Dmitri Gribenko authored
llvm-svn: 174284
-