aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-01-11[libclang] In ASTUnit::getMainFileName() Invocation may be null because the ↵Argyrios Kyrtzidis
ASTUnit came from loading a PCH/module. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172259 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11Set process return code of 1 in set-xcode-analyzer when Xcode needs to be ↵Ted Kremenek
quit. Fixes <rdar://problem/12983031>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172256 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11Formatter: Format ObjC static and instance methods consistently, add a test ↵Nico Weber
for that. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172254 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11libclang: remove unneeded castsDmitri Gribenko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172253 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11libclang: change CXCursor to store 'const void *' pointers forDmitri Gribenko
const-correctness, and update all users git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172252 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11Constify parameter of clang::getCursorKindForDeclDmitri Gribenko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172249 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11Reject incompatible redeclarations of extern C symbols.Rafael Espindola
Before we were only checking if the new declaration itself was marked extern C. Fixes prpr14766. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172243 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11Improve diagnostic per Richard's suggestionFariborz Jahanian
(which may yet change if we move the diagnostic outside case value). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172242 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11libclang: use getCursorTU and getCursorASTUnit instead of explicit castsDmitri Gribenko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172241 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11Fix crashes in UnwrappedLineParser on missing parens.Manuel Klimek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172239 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11Fix single-line optimization for ObjC.Manuel Klimek
Puts blocks always into multiple lines when they start with an ObjC keyword or minus. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172238 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11Fix crash on invalid.Manuel Klimek
if { foo; } would previously crash clang-format. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172232 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11Fix parsing of initializer lists with elaborated type specifier.Manuel Klimek
Now we correctly parse and format: verifyFormat("struct foo a = { bar }; int n; git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172229 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11Implements pulling simple blocks into a single line.Manuel Klimek
void f() { return 42; } The final change that implements the feature. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172225 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11Add -std=c++98 to the test and minor improvment in addition.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172221 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11Allow RefactoringTool to write to memory instead of always to diskEdwin Vane
RefactoringTool::run() always writes the result of rewrites to disk. Instead, make this optional and provide a method for getting the refactoring results in a memory buffer instead. Also made ClangTool polymorphic so RefactoringTool could inherit from it to properly express the IS-A relationship. This change also provides access to ClangTool's public interface, e.g. mapVirtualFile() which is important once refactored buffers start living in memory instead of on disk. Reviewers: klimek git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172219 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11Correct spacing around new and delete.Daniel Jasper
This fixes llvm.org/PR14913. Before: A *a = new(placement) A; After: A *a = new (placement) A; git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172212 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11clang-format: a bit nicer error message.Alexander Kornienko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172211 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11Enable the new (more C++-like, less broken) EH model when targeting the GNUstepDavid Chisnall
Objective-C runtime 1.7 or greater. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172207 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11Fixed an assertion failure triggered by invalid code.Enea Zaffanella
Set invalid type of declarator after emitting error diagnostics, so that it won't be later considered when instantiating the template. Added test5_inst in test/SemaCXX/condition.cpp for non-regression. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172201 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11Improve handling of trailing declaration annotations.Daniel Jasper
Before: void aaaaaaaaaaaa(int aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa) GUARDED_BY( aaaaaaaaaaaaa); After: void aaaaaaaaaaaa(int aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa) GUARDED_BY(aaaaaaaaaaaaa); Also did some formatting cleanups with clang-format on the way. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172200 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11Improved formatting of constructor initializersDaniel Jasper
Added option to put each constructor initializer on its own line if not all initializers fit on a single line. Enabling this for Google style now as the style guide (arguable) suggests it. Not sure whether we also want it for LLVM. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172196 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11Test commit.Enea Zaffanella
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172195 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11Refactor IndentState into two classes.Daniel Jasper
As we keep adding more stuff to it, this structure is easier to maintain. At one point we might think about making it an actual class with specific accessors, etc. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172188 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11Pass false instead of 0 since isStar parameter of getArray has type bool. No ↵Nikola Smiljanic
functionality change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172185 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11Fix spelling error and remove the part about CMake having experimental Ninja ↵Nikola Smiljanic
support since 2.8.9 has been released some time ago. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172182 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11Revert the line ending mess I made.Nikola Smiljanic
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172179 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11Fix spelling error and remove the part about CMake having experimental Ninja ↵Nikola Smiljanic
support since 2.8.9 has been released some time ago. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172177 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11[analyzer] Rename the warning: state the issue before the hint of how itAnna Zaks
can be fixed git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172170 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11[analyzer]Recognize ivar invalidation protocol even if it was redeclaredAnna Zaks
This will get rid of some false positives as well as false negatives. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172169 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11[analyzer] Ivar invalidation: track ivars declared in categories.Anna Zaks
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172168 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11Revert "tg-fixits.td: fixup for Linux"Jordan Rose
It's better to show no caret/ranges/fixits than to show them misaligned. (It scares me a bit that Clang is going to show them misaligned on systems without a proper llvm::sys::locale::columnWidth.) See PR14910. This reverts commit a03cc72bedd015b7eb76e9ac650992f58a48549d. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172163 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11Replace more usages of __func__ with LLVM_FUNCTION_NAMEDmitri Gribenko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172161 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11libclang logging: fixup for MSVC, which does not have __func__Dmitri Gribenko
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172158 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11Improve on my last test for patch for // rdar://12897704Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172154 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-11tg-fixits.td: fixup for Linux, which does not have a correct implementation ofDmitri Gribenko
llvm::sys::locale::columnWidth() git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172152 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-10Truth in advertising: LocallyScopedExternalDecls actually only containsRichard Smith
external declarations with C language linkage. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172150 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-10[analyzer] Allow IvarInvalidation checker to suppress warnings viaAnna Zaks
assertions. To ensure that custom assertions/conditional would also be supported, just check if the ivar that needs to be invalidated or set to nil is compared against 0. Unfortunately, this will not work for code containing 'assert(IvarName)' git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172147 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-10c++ IRGen. In trivial cases that object is going into staticFariborz Jahanian
storage and thus is implicitly zero-initialized, no need to do C++11 memory model. This patch unconditionally detects such condition and zeroinitializer's the variable. Patch has been commented on and OKed by Doug off-line. // rdar://12897704 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172144 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-10Formatter: Remove a fixme, Jordy says @synthesize is good as is.Nico Weber
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172141 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-10Formatter: Put spaces in ObjC method decls in the right place for Google style.Nico Weber
Objective-C method declarations look like this: - (returntype)name:(type)argname anothername:(type)arg2name; In google style, there's no space after the leading '-' but one after "(returntype)" instead (but none after the argument types), see http://google-styleguide.googlecode.com/svn/trunk/objcguide.xml#Method_Declarations_and_Definitions Not inserting the space after '-' is easy, but to insert the space after the return type, the formatter needs to know that a closing parenthesis ends the return type. To do this, I tweaked the code in parse() to check for this, which in turn required moving detection of TT_ObjCMethodSpecifier from annotate() to parse(), because parse() runs before annotate(). (To keep things interesting, the return type is optional, but it's almost always there in practice.) http://llvm-reviews.chandlerc.com/D280 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172140 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-10[analyzer] Fix non-determinizm introduced in r172104.Anna Zaks
In some cases, we just pick any ivar that needs invalidation and attach the warning to it. Picking the first from DenseMap of pointer keys was triggering non-deterministic output. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172134 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-10ToolChains: Minor touchup to use correct type, avoid truncation.Will Dietz
Truncation happens regularly when find_first_not_of returns npos, strings long enough to trigger bug here are implausible. No functionality change intended (ignoring absurd string lengths). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172127 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-10Declare +new instead of -new in test.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172126 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-10[ms-inline asm] Add test case for r172121. Chad Rosier
Part of rdar://12991541 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172122 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-10[ms-inline asm] Extend the inline asm Sema lookup interface to determine if theChad Rosier
Decl is a VarDecl. Part of rdar://12991541 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172120 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-10Formatter: No spaces around '=' in @property lines.Nico Weber
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). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172110 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-10[analyzer] Add more checks to the ObjC Ivar Invalidation checker.Anna Zaks
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. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172104 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-10In my last patch use InGroup<Switch> (per Dmitri's comment).Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172103 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-10Provide a better warning when case value overflows.Fariborz Jahanian
// rdar://11577384 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172102 91177308-0d34-0410-b5e6-96231b3b80d8