summaryrefslogtreecommitdiffstats
path: root/clang/lib/AST
Commit message (Collapse)AuthorAgeFilesLines
* Add a FIXME to revisit the performance of BackRefMap laterTimur Iskhodzhanov2012-07-251-0/+2
| | | | llvm-svn: 160709
* PR12057: Allow variadic template pack expansions to cross lambda boundaries.Richard Smith2012-07-251-4/+6
| | | | | | | | | | Rather than adding a ContainsUnexpandedParameterPack bit to essentially every AST node, we tunnel the bit directly up to the surrounding lambda expression when we reach a context where an unexpanded pack can not normally appear. Thus any statement or declaration within a lambda can now potentially contain an unexpanded parameter pack. llvm-svn: 160705
* Comment diagnostics: add warning for multiple \param commands with duplicateDmitri Gribenko2012-07-241-1/+11
| | | | | | parameter names. llvm-svn: 160696
* CommentSema: simplify functions, per Jordan's comment.Dmitri Gribenko2012-07-241-8/+4
| | | | llvm-svn: 160689
* Comment parsing: allow newlines between \param, direction specification (e.g.,Dmitri Gribenko2012-07-241-6/+28
| | | | | | [in]), parameter name and description paragraph. llvm-svn: 160682
* Comment parsing: couple TextTokenRetokenizer and comment parser together toDmitri Gribenko2012-07-241-50/+42
| | | | | | | remove one of the two variable-length lookahead buffers. Now retokenizer will ask for more tokens when it needs them. llvm-svn: 160680
* Move TextTokenRetokenizer from CommentLexer.h to CommentParser.cpp since it isDmitri Gribenko2012-07-241-0/+203
| | | | | | an implementation detail of the parser. llvm-svn: 160679
* Comment parsing: retokenized text tokens are now pushed back in correct (notDmitri Gribenko2012-07-241-2/+5
| | | | | | reverse) order llvm-svn: 160675
* Fix PR13207 (Mangling of templates with back references when using -cxx-abi ↵Timur Iskhodzhanov2012-07-241-10/+55
| | | | | | microsoft) llvm-svn: 160667
* Comment Sema: refactor handling of 'ParmVarDecl's and save them in Sema members.Dmitri Gribenko2012-07-231-26/+49
| | | | llvm-svn: 160634
* Comment AST: add InlineContentComment::RenderKind to specify a defaultDmitri Gribenko2012-07-232-10/+43
| | | | | | | | rendering mode for clients that don't want to interpret Doxygen commands. Also add a libclang API to query this information. llvm-svn: 160633
* Fix a typo (the the => the)Sylvestre Ledru2012-07-232-2/+2
| | | | llvm-svn: 160622
* When we have an Objective-C object with non-trivial lifetime in aDouglas Gregor2012-07-231-3/+6
| | | | | | | | structor class under ARC, that struct/class does not have a trivial move constructor or move assignment operator. Fixes the rest of <rdar://problem/11738725>. llvm-svn: 160615
* Fix PR13411: Comment parsing: failed assertion on unterminated verbatim block.Dmitri Gribenko2012-07-201-5/+10
| | | | | | | | | | The assertion was wrong in case we have a verbatim block without a closing command. Also add tests for closing command name in a verbatim block, since now it can be empty in such cases. llvm-svn: 160568
* CommentBriefParser: coding style fixDmitri Gribenko2012-07-201-2/+1
| | | | llvm-svn: 160551
* CommentBriefParser: use \returns if we can't find the \brief or just a plainDmitri Gribenko2012-07-201-6/+21
| | | | | | paragraph. llvm-svn: 160550
* Let Expr::HasSideEffects() return false for NULL, bool literals, this, and ↵Nico Weber2012-07-201-0/+6
| | | | | | | | nullptr. Fixes PR13413, -Wunused-private-field now warns on unused fields initialized to NULL. llvm-svn: 160541
* Remove HasSynthBitfield and all callers/writers/etc. Also removeEric Christopher2012-07-192-11/+3
| | | | | | | | previous ResetObjCLayout calls since this is now handled in Sema. Part of rdar://11842763 llvm-svn: 160527
* CommentDumper: print word-like arguments for block commands.Dmitri Gribenko2012-07-191-0/+2
| | | | llvm-svn: 160519
* CommentSema: add more inline commands to tablesDmitri Gribenko2012-07-191-2/+3
| | | | llvm-svn: 160481
* Fix ParagraphComment::isWhitespace(): a paragraph without a non-whitespaceDmitri Gribenko2012-07-191-1/+2
| | | | | | | TextComment node was considered whitespace even if it contained other child nodes. llvm-svn: 160474
* Comment::dump(): show name of inline commandDmitri Gribenko2012-07-181-0/+1
| | | | llvm-svn: 160467
* Comment parsing: don't parse whitespace before \endverbatim as a separate ↵Dmitri Gribenko2012-07-181-0/+10
| | | | | | line of whitespace. llvm-svn: 160464
* This fits into 80 columns without wrapping.Dmitri Gribenko2012-07-181-2/+1
| | | | llvm-svn: 160453
* Add caching for TextComment::isWhitespace(), ParagraphComment::isWhitespace().Dmitri Gribenko2012-07-181-2/+2
| | | | llvm-svn: 160452
* On Darwin, the linker removes functions in CommentDumper.o (Comment::dump())Dmitri Gribenko2012-07-182-8/+16
| | | | | | | | | | | | despite __attribute__(__used__). As explained by Argyrios, > .a archive files do some stripping of their own and they remove .o files that > contain functions that are not referenced by any other .o file. The fix is to use these functions from another .o file. Thanks, Argyrios! llvm-svn: 160437
* CommentSema: \short is the same as \brief.Dmitri Gribenko2012-07-181-2/+2
| | | | llvm-svn: 160414
* Implement an optimization for finding the comment that occurs just after aDmitri Gribenko2012-07-171-6/+24
| | | | | | | | | | given declaration. It is based on the observation that during parsing the comment that should be attached to the decl is usually among the last two documentation comments parsed. llvm-svn: 160400
* CommentBriefParser: use StringSwitch::Cases to group synonyms. Thanks Jordan!Dmitri Gribenko2012-07-171-9/+4
| | | | llvm-svn: 160396
* Teach the ASTImporter how to handle anonymous structs/unionsDouglas Gregor2012-07-172-24/+53
| | | | | | | better. Fixes <rdar://problem/11466212>; the test (and back-ported version of this code) were committed to LLDB in r160186. llvm-svn: 160395
* Don't treat overflow in floating-point conversions as a hard error in ↵Eli Friedman2012-07-171-6/+5
| | | | | | constant evaluation. <rdar://problem/11874571>. llvm-svn: 160394
* Handle the case where the base type is not dependent, but the derived one is.Rafael Espindola2012-07-171-0/+3
| | | | | | Fixes pr13353.cpp. llvm-svn: 160393
* CommentBriefParser: make \short should equivalent to \brief, per Doxygen manual.Dmitri Gribenko2012-07-171-1/+2
| | | | llvm-svn: 160383
* Related to PR11848 and core-21989: switch ContainsUnexpandedParameterPack fromRichard Smith2012-07-162-7/+15
| | | | | | | | | being a property of a canonical type to being a property of the fully-sugared type. This should only make a difference in the case where an alias template ignores one of its parameters, and that parameter is an unexpanded parameter pack. llvm-svn: 160244
* Revert change accidentally committed in r160240.Richard Smith2012-07-151-4/+3
| | | | llvm-svn: 160241
* PR13368: Halve the instantiation depth of this test again. Apparently, FreeBSDRichard Smith2012-07-151-3/+4
| | | | | | has a much lower default stack limit than the systems I have access to. llvm-svn: 160240
* Replace IsSameValue with the llvm::APSInt/llvm::APInt versionsEric Christopher2012-07-151-42/+3
| | | | | | | | that we just copied from here and replace all uses. Part of rdar://11875995 llvm-svn: 160224
* Add a per target max vector alignment field (e.g., 32-byte alignment for x86 ↵Chad Rosier2012-07-131-0/+4
| | | | | | | | | | due to AVX). Currently, if no aligned attribute is specified the alignment of a vector is inferred from its size. Thus, very large vectors will be over-aligned with no benefit. Target owners should set this target max. llvm-svn: 160209
* Move option test earlier in the function.Rafael Espindola2012-07-131-3/+2
| | | | llvm-svn: 160202
* add support for conditional expressions in Expr::HasSideEffects()Nuno Lopes2012-07-131-0/+3
| | | | | | This fixes a bug in __builtin_object_size() codegen llvm-svn: 160191
* Comment AST nodes: rename getXXXCount() methods to getNumXXXs() to be in ↵Dmitri Gribenko2012-07-132-6/+6
| | | | | | line with Statement AST nodes. llvm-svn: 160182
* Use -fvisibility-inlines-hidden in inline functions too. This matches gccRafael Espindola2012-07-131-29/+42
| | | | | | behavior since gcc pr30066. Thanks to Benjamin Kramer for pointing it out. llvm-svn: 160174
* Provide a special-case diagnostic when two class member functions instantiateRichard Smith2012-07-131-3/+11
| | | | | | | to the same signature. Fix a bug in the type printer which would cause this diagnostic to print wonderful types like 'const const int *'. llvm-svn: 160161
* Fix a bug in my previous commit. The problem is not that we were not using theRafael Espindola2012-07-131-4/+2
| | | | | | | canonical decl for the template, but that we were not merging attributes for templates at all! llvm-svn: 160157
* Attaching comments to declarations during parsing: handle more Objective-C ↵Dmitri Gribenko2012-07-131-2/+14
| | | | | | declarations. llvm-svn: 160156
* Comment parsing: repaint the bikesched: rename 'HTML open tags' to 'HTML ↵Dmitri Gribenko2012-07-134-110/+108
| | | | | | start tags' and 'HTML close tags' to 'HTML end tags' according to HTML spec. llvm-svn: 160153
* Make concepts of optional and forbidden end tags separate. Thanks Jordan ↵Dmitri Gribenko2012-07-121-7/+30
| | | | | | for pointing this! llvm-svn: 160149
* Use the canonical template decl when trying to find if it has a visibilityRafael Espindola2012-07-121-2/+4
| | | | | | attribute. llvm-svn: 160139
* [Windows] Use thiscall as the default calling convention for class methods. ↵Timur Iskhodzhanov2012-07-125-8/+22
| | | | | | PR12785 llvm-svn: 160121
* AST/CommentSema.cpp: Fix signess in abs() to appease msvc. It would not make ↵NAKAMURA Takumi2012-07-121-1/+2
| | | | | | sense to pass (unsigned)-(unsigned) to abs(). llvm-svn: 160097
OpenPOWER on IntegriCloud