aboutsummaryrefslogtreecommitdiff
path: root/unittests
AgeCommit message (Collapse)Author
2012-12-18This is the libclang patch providing minimal API toFariborz Jahanian
use clang's formatter. Currently, formatter is used to format declaration tags for xml comments. Since formatter is in flux and its change will break several of the clang comment tests, only a single tests is formatted using this facility. Doug has reviewed and approved it for check-in. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170467 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-18Better support for constructor initializers.Daniel Jasper
We used to format initializers like this (with a sort of hacky implementation): Constructor() : Val1(A), Val2(B) { and now format like this (with a somewhat better solution): Constructor() : Val1(A), Val2(B) { assuming this would not fit on a single line. Also added tests. As a side effect we now first analyze whether an UnwrappedLine needs to be split at all. If not, not splitting it is the best solution by definition. As this should be a very common case in normal code, not exploring the entire solution space can provide significant speedup. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170457 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-18Make the format scrambler understand line comments.Daniel Jasper
This allows for writing tests including line comments easier and more readable. We will need more of those tests in the future and also line comments are useful to force line breaks in tests. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170446 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-17Add basic support for splitting before function calls if it can't beDaniel Jasper
avoided. This required a minor modification of the memoization as now the "CurrentPenalty" depends on whether or not we break before the current token. Therefore, the CurrentPenalty should not be memoized but added after retrieving a value from memory. This should not affect the runtime behavior. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170337 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-17Fix several formatting problems.Daniel Jasper
More specifically: - Improve formatting of static initializers. - Fix formatting of lines comments in enums. - Fix formmating of trailing line comments. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170316 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-13Dont use/link ARCMT, StaticAnalyzer and Rewriter to clang when the userRoman Divacky
specifies not to. Dont build ASTMatchers with Rewriter disabled and StaticAnalyzer when it's disabled. Without all those three, the clang binary shrinks (x86_64) from ~36MB to ~32MB (unstripped). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@170135 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-11Extend stat query APIs to explicitly specify if the query is forArgyrios Kyrtzidis
a file or directory, allowing just a stat call if a file descriptor is not needed. Doing just 'stat' is faster than 'open/fstat/close'. This has the effect of cutting down system time for validating the input files of a PCH. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169831 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-11PR14558: Compute triviality of special members (etc) at the end of the classRichard Smith
definition, rather than at the end of the definition of the set of nested classes. We still defer checking of the user-specified exception specification to the end of the nesting -- we can't check that until we've parsed the in-class initializers for non-static data members. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169805 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-10Addi formatting tests for pointer template parameters.Daniel Jasper
Fix spacing before ",". git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169746 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-10Clang-format: error recovery for access specifiersAlexander Kornienko
Reviewers: klimek Reviewed By: klimek CC: cfe-commits Differential Revision: http://llvm-reviews.chandlerc.com/D198 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169738 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-10Adding tests since when I was asked whether this works I wasn'tManuel Klimek
100% sure. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169725 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-07Small tweaks to clang-format.Daniel Jasper
Now not joining keywords with '::' and not putting a space between a pointer pointer. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169594 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-06Fixes Makefile for Format unit tests.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169554 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-06Clang-format: IndentCaseLabels option, proper namespace handlingAlexander Kornienko
Summary: + tests arranged in groups, as their number is already quite large. Reviewers: djasper, klimek Reviewed By: djasper CC: cfe-commits Differential Revision: http://llvm-reviews.chandlerc.com/D185 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169520 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-06Clang-format: detect unbalanced braces.Alexander Kornienko
Reviewers: klimek, djasper Reviewed By: klimek CC: cfe-commits, silvas Differential Revision: http://llvm-reviews.chandlerc.com/D176 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169518 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-06Implements multiple parents in the parent map.Manuel Klimek
Previously we would match the last visited parent, which in the case of template instantiations was the last instantiated template. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169508 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-06Improve clang-format's handling of unary operators.Daniel Jasper
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169500 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-06"<<" alignment for clang-format.Daniel Jasper
Also, small fix for handling the first token correctly. Review: http://llvm-reviews.chandlerc.com/D177 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169488 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-05In DeclPrint add printing of '= default'Fariborz Jahanian
in constructors. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169440 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-05In DeclPrint add printing of 'explicit'Fariborz Jahanian
constructors. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169435 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-05fix comment.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169413 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-05Testing C++ declarations embedded inFariborz Jahanian
<declaration> tag of Comment XML. Added DeclPrint support for constructors and fix tests accordingly. This is wip. // rdar://12378714 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169412 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-05Clang-format: parse for and while loopsAlexander Kornienko
Summary: Adds support for formatting for and while loops. Reviewers: djasper, klimek Reviewed By: klimek CC: cfe-commits Differential Revision: http://llvm-reviews.chandlerc.com/D174 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169387 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-05Indentation fixes for clang-format.Daniel Jasper
- Fix behavior of memoization together with optimization - Correctly attribute the PenaltyIndentLevel (breaking directly after "(" did not count towards the inner level) - Recognize more tokens as assignments Review: http://llvm-reviews.chandlerc.com/D172 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169384 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-05Small tweaks to automatic formatting.Daniel Jasper
Recognize '!=' as a binary operator and assume that there are no type definitions on the RHS of an assignment. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169363 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-04Error recovery part 2Alexander Kornienko
Summary: Adds recovery for structural errors in clang-format. Reviewers: djasper Reviewed By: djasper CC: cfe-commits, silvas Differential Revision: http://llvm-reviews.chandlerc.com/D164 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169286 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-04Clang-format error recovery part 1Alexander Kornienko
Reviewers: klimek CC: cfe-commits Differential Revision: http://llvm-reviews.chandlerc.com/D163 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169278 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-04Enum formatting implementationAlexander Kornienko
Reviewers: djasper, klimek Reviewed By: klimek CC: cfe-commits Differential Revision: http://llvm-reviews.chandlerc.com/D161 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169272 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-04Fix spelling I ran over while proof-reading tests.Manuel Klimek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169271 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-04Fixes crash in isDerivedFrom for recursive templates.Manuel Klimek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169262 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-04Small fixes to unary operator recognition and handling of includeDaniel Jasper
directives. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169261 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-04Add parameterCountIs() matcher.Daniel Jasper
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169257 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-04Replace workarounds with correct fixes.Daniel Jasper
Also fix header guard. http://llvm-reviews.chandlerc.com/D159 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169254 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-04Really sort the #include lines in unittests/...Chandler Carruth
I forgot to re-sort after fixing main module headers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169244 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-04Sort the #include lines for unittests/...Chandler Carruth
I've tried to place sensible headers at the top as main-module headers. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169243 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-04ASTTests, ASTMatchersTests: Move clangEdit before clangAst in USEDLIB.NAKAMURA Takumi
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169236 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-04Untabify (in USEDLIBS, Makefile(s)).NAKAMURA Takumi
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169235 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-04clang/Lex: [CMake] Update CMakefiles since r169229.NAKAMURA Takumi
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169233 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-04Refactor recording the preprocessor conditional directive regions out ofArgyrios Kyrtzidis
PreprocessingRecord and into its own class, PPConditionalDirectiveRecord. Decoupling allows a client to use the functionality of PPConditionalDirectiveRecord without needing a PreprocessingRecord. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169229 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-04Introduce CompilationDatabase::getAllCompileCommands() that returns allArgyrios Kyrtzidis
compile commands of the database and expose it via the libclang API. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169226 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-03Initial version of formatting library.Daniel Jasper
This formatting library will be used by a stand-alone clang-format tool and can also be used when writing other refactorings. Manuel's original design document: https://docs.google.com/a/google.com/document/d/1gpckL2U_6QuU9YW2L1ABsc4Fcogn5UngKk7fE5dDOoA/edit The library can already successfully format itself. Review: http://llvm-reviews.chandlerc.com/D80 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169137 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-03Make hasDeclaration work for enums.Daniel Jasper
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169129 91177308-0d34-0410-b5e6-96231b3b80d8
2012-12-01Update unit tests not to rely on transitive includes.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169096 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-30Fix unit tests for ModuleLoader change in r168961.Douglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168962 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-29Remove out-of-date comment.Richard Smith
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168957 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-29ASTTests/StmtPrinterTest/StmtPrinter.TestMSIntegerLiteral: Remove i128 ↵NAKAMURA Takumi
stuff. Conditioning-out in macro argument was not accepted on MS cl.exe. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168867 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-29ASTTests/StmtPrinterTest/StmtPrinter.TestMSIntegerLiteral: Suppress i128 ↵NAKAMURA Takumi
according to r168856, for now. I think "i128", that I conditioned out, could be completely removed. MS Compiler doesn't accept i128. We can assume no one would use i128. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168865 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-27Allow an ASTConsumer to selectively skip function bodies while parsing. PatchRichard Smith
by Olivier Goffart! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168726 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-16Fix partial-match-bind-behavior with forEachDescendant() matchers.Daniel Jasper
The problem is that a partial match of an (explicit or implicit) allOf matcher binds results, i.e. recordDecl(decl().bind("x"), hasName("A")) can very well bind a record that is not named "A". With this fix, the common cases of stumbling over this bug are fixed by the BoundNodesMap overwriting the results of a partial match. An error can still be created with a weird combination of anyOf and allOf (see inactive test). We need to decide whether this is worth fixing, as the fix will have performance impact. Review: http://llvm-reviews.chandlerc.com/D124 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168177 91177308-0d34-0410-b5e6-96231b3b80d8
2012-11-16clang/unittests: Fixup corresponding to Doug's r168136.NAKAMURA Takumi
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168137 91177308-0d34-0410-b5e6-96231b3b80d8