summaryrefslogtreecommitdiffstats
path: root/clang/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* CommentSema: \short is the same as \brief.Dmitri Gribenko2012-07-181-2/+2
| | | | llvm-svn: 160414
* When performing the deduced/actual argument type check for C++Douglas Gregor2012-07-181-0/+10
| | | | | | | | [temp.deduct.call]p4 under Objective-C++ ARC, make sure to adjust the qualifiers to introduce the implicit strong lifetime when needed. Fixes <rdar://problem/11825671>. llvm-svn: 160412
* More replacing of target-dependent intrinsics with target-indepdent Joel Jones2012-07-181-2/+3
| | | | | | | | | | | | | | | | | | | | | intrinsics. The second instruction(s) to be handled are the vector versions of count set bits (ctpop). The changes here are to clang so that it generates a target independent vector ctpop when it sees an ARM dependent vector bits set count. The changes in llvm are to match the target independent vector ctpop and in VMCore/AutoUpgrade.cpp to update any existing bc files containing ARM dependent vector pop counts with target-independent ctpops. There are also changes to an existing test case in llvm for ARM vector count instructions and to a test for the bitcode upgrade. <rdar://problem/11892519> There is deliberately no test for the change to clang, as so far as I know, no consensus has been reached regarding how to test neon instructions in clang; q.v. <rdar://problem/8762292> llvm-svn: 160409
* Remove unnecessary spacing around Objective-C object literal codeDouglas Gregor2012-07-171-9/+3
| | | | | | completions. Fixes <rdar://problem/11889572>. llvm-svn: 160407
* Adding a fixit for includes that cannot be found with angle brackets, but ↵Aaron Ballman2012-07-171-3/+22
| | | | | | can be found with quoted strings instead. Implements PR13201. llvm-svn: 160406
* 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-172-2/+3
| | | | | | Fixes pr13353.cpp. llvm-svn: 160393
* Fixed whitespace issue introduced in r160373.Joao Matos2012-07-171-8/+7
| | | | llvm-svn: 160388
* CommentBriefParser: make \short should equivalent to \brief, per Doxygen manual.Dmitri Gribenko2012-07-171-1/+2
| | | | llvm-svn: 160383
* Issue warning when assigning out-of-range integer values to enums.Fariborz Jahanian2012-07-172-1/+53
| | | | | | | Due to performance cost, this is an opt-in option placed under -Wassign-enum. // rdar://11824807 llvm-svn: 160382
* -Wobjc-literal-compare: don't warn when comparing against nil.Jordan Rose2012-07-171-2/+16
| | | | | | | | | | | | | | Checks against nil often appear as guards in macros, and comparing Objective-C literals to nil has well-defined behavior (if tautological). On OS X, 'nil' has not been typed as 'id' since 10.6 (possibly earlier), so the warning was already not firing, but other runtimes continue to use ((id)0) or some variant. This change accepts comparisons to any null pointer; to keep it simple, it looks through all casts (not just casts to 'id'). PR13276 llvm-svn: 160379
* Add -Wobjc-string-compare under -Wobjc-literal-compare.Jordan Rose2012-07-171-9/+22
| | | | | | | | | Suggested by Ted, since string literal comparison is at least slightly more sensible than comparison of runtime literals. (Ambiguous language on developer.apple.com implies that strings are guaranteed to be uniqued within a translation unit and possibly across a linked binary.) llvm-svn: 160378
* Now that -Wobjc-literal-compare is a warning, put the fixit on a note.Jordan Rose2012-07-171-100/+66
| | | | | | | | Recovering as if the user had actually called -isEqual: is a bit too far from the semantics of the program as written, /even though/ it's probably what they intended. llvm-svn: 160377
* [analyzer] Remove stale result type lvalue code.Jordan Rose2012-07-171-10/+2
| | | | | | | This code has been moved around multiple times, but seems to have been obsolete ever since we started handled references like pointers. llvm-svn: 160375
* [Windows] Abstract pure virtual method calls in the ABI. Fix the Windows ABI ↵Joao Matos2012-07-174-8/+15
| | | | | | to forward to the correct function. llvm-svn: 160373
* Add a custom initialize hook for clang tools + minor fixes in ↵Alexander Kornienko2012-07-174-3/+50
| | | | | | CustomCompilationDatabase.h llvm-svn: 160369
* Merge visibility from previous decls before looking at visibility pragma. ThisRafael Espindola2012-07-171-4/+4
| | | | | | | is a bit fuzzy, but matches gcc behavior and existing code bases seem to depend on it. llvm-svn: 160364
* Finishing the move of RefactoringCallbacks and fixing the correspondingDaniel Jasper2012-07-171-11/+14
| | | | | | buildbot failures. llvm-svn: 160355
* Revert commit r160308. We decide to move builtins selection to the backend.Simon Atanasyan2012-07-172-30/+0
| | | | llvm-svn: 160353
* Move RefactoringCallbacks to Tooling to avoid dependency fromDaniel Jasper2012-07-173-2/+3
| | | | | | | ASTMatchers (lower level abstraction) to Tooling (higher level abstraction). llvm-svn: 160351
* Make the isDerivedFrom matcher more generic.Daniel Jasper2012-07-171-37/+27
| | | | | | | It now accepts an arbitrary inner matcher but is fully backwards compatible. llvm-svn: 160348
* [Win32] Rework crash-report since r145389.NAKAMURA Takumi2012-07-171-7/+1
| | | | | | | | | | | - lib/Driver/Driver.cpp, tools/driver/driver.cpp: Exit status should not be propagated, although clang driver should catch exceptions. - test/Driver/crash-report.c: Add REQUIRES:shell for now. FIXME: setenv should work also on Lit.InternalShellRunner. - test/Driver/crash-report.c: Remove XFAIL. Thanks to Chad, To point out the issue. llvm-svn: 160343
* Record visibility pragmas when we see a tag declaration. We might use itRafael Espindola2012-07-171-0/+4
| | | | | | to build a type before seeing the definition. llvm-svn: 160339
* Uninitialized variables: two little changes:Richard Smith2012-07-172-1/+4
| | | | | | | * Treat compound assignment as a use, at Jordy's request. * Always add compound assignments into the CFG, so we can correctly diagnose the use in 'return x += 1;' llvm-svn: 160334
* -Wuninitialized: Split the classification of DeclRefExprs as initialization orRichard Smith2012-07-171-228/+223
| | | | | | | | | | use out of TransferFunctions, and compute it in advance rather than on-the-fly. This allows us to handle compound assignments with DeclRefExprs on the RHS correctly, and also makes it trivial to treat const& function parameters as not initializing the argument. The patch also makes both of those changes. llvm-svn: 160330
* [analyzer] Handle new-expressions with initializers for scalars.Jordan Rose2012-07-162-11/+23
| | | | | | <rdar://problem/11818967> llvm-svn: 160328
* Don't crash when emitting fixits following Unicode characters.Jordan Rose2012-07-161-27/+26
| | | | | | | | | | | | | | | This code is very sensitive to the difference between "columns" as printed and "bytes" (SourceManager columns). All variables are now named explicitly and our assumptions are (hopefully) documented as both comment and assertion. Whether parseable fixits should use byte offsets or Unicode character counts is pending discussion on the mailing list; currently the implementation uses bytes (and has no problems on lines containing multibyte characters). This has been added to the user manual. <rdar://problem/11877454> llvm-svn: 160319
* Simplify float comparison checks by using early return.David Blaikie2012-07-161-24/+16
| | | | | | Found while investigating PR13330 llvm-svn: 160318
* Fix copy-paste mistake for CMake dependency.Ted Kremenek2012-07-161-1/+1
| | | | llvm-svn: 160315
* Looks like libTooling might also depend on ClangDiagnosticCommon.Ted Kremenek2012-07-161-0/+4
| | | | llvm-svn: 160313
* Add libEdit dependency on ClangDiagnosticCommon. Hopefully this will ↵Ted Kremenek2012-07-161-0/+4
| | | | | | unbreak the VS build. llvm-svn: 160309
* MIPS: Implement __builtin_mips_shll_qb builtin function overloading.Simon Atanasyan2012-07-162-0/+30
| | | | | | | This function has two versions. The first one is used for a register operand. The second one is used for an immediate number. llvm-svn: 160308
* Fix rejects-valid: explicit specialization of redeclared deleted function ↵David Blaikie2012-07-161-1/+1
| | | | | | | | template. Review by Richard Smith. llvm-svn: 160306
* modern objective-c translator: conditionally includeFariborz Jahanian2012-07-161-1/+5
| | | | | | <string.h>. // rdar://11847319 llvm-svn: 160287
* The new clang-ast-dump tool for selective AST dumping. Moved common ↵Alexander Kornienko2012-07-162-0/+81
| | | | | | command-line tool stuff to CommandLineClangTool llvm-svn: 160265
* Prevent unused-variable warning in optimized builds.Daniel Jasper2012-07-161-0/+1
| | | | llvm-svn: 160257
* Add refactoring callbacks to make common kinds of refactorings easy.Daniel Jasper2012-07-162-0/+79
| | | | llvm-svn: 160255
* Add correct parenthesis range to CXXConstructExprs insideDaniel Jasper2012-07-161-0/+3
| | | | | | CXXFunctionalCastExprs. llvm-svn: 160252
* PR13365: Fix code which was trying to treat an array of DeducedTemplateArgumentRichard Smith2012-07-164-73/+66
| | | | | | | | as an array of its base class TemplateArgument. Switch the const TemplateArgument* parameters of InstantiatingTemplate's constructors to ArrayRef<TemplateArgument> to prevent this from happening again in the future. llvm-svn: 160245
* 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
* Update Clang to reflect the move of MDBuilder in r160237.Chandler Carruth2012-07-153-3/+3
| | | | llvm-svn: 160238
* Enable new linker behaviour on FreeBSD.David Chisnall2012-07-151-0/+2
| | | | llvm-svn: 160231
* Without this patch clang warns onRafael Espindola2012-07-151-6/+36
| | | | | | | | | | | | | | | | | | | | | struct __attribute__((visibility("hidden"))) zed { }; struct __attribute__((visibility("hidden"))) zed; Which is a bit silly and got a lot noisier now that we correctly handle visibility pragmas. This patch fixes that and also has some extra quality improvements: * We now produce an error instead of a warning for struct __attribute__((visibility("hidden"))) zed { }; struct __attribute__((visibility("default"))) zed; * The "after definition" warning now points to the new attribute that is ignored instead of pointing to the declaration. llvm-svn: 160227
* Make const the argument of getDefinition.Rafael Espindola2012-07-151-4/+4
| | | | llvm-svn: 160226
* Use llvm::APSInt::isSameValue to compare for the same value.Eric Christopher2012-07-151-1/+1
| | | | | | Finishes rdar://11875995 llvm-svn: 160225
OpenPOWER on IntegriCloud