summaryrefslogtreecommitdiffstats
path: root/clang/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* Silence a GCC warning about a set-but-not-used variable in release builds.Chandler Carruth2012-03-041-0/+1
| | | | llvm-svn: 152005
* Add tests for [over.literal]. Fix a few bugs which were exposed by the tests.Richard Smith2012-03-041-5/+10
| | | | llvm-svn: 151997
* add a testcase for PR12094 and fix a crash on pointer to incomplete type,Chris Lattner2012-03-041-3/+7
| | | | | | reported by Richard Smith. llvm-svn: 151993
* Add a pile of tests for unrestricted unions, and advertise support for them.Richard Smith2012-03-031-1/+1
| | | | llvm-svn: 151992
* constexpr: Remove APValue/CCValue distinction. It is no longer useful given theRichard Smith2012-03-031-183/+95
| | | | | | resolution of core issue 1454. llvm-svn: 151991
* Remove unused variable.Benjamin Kramer2012-03-031-1/+0
| | | | llvm-svn: 151989
* Avoid an unnecessary recursive loop between type canonicalization and NNS ↵Eli Friedman2012-03-031-18/+5
| | | | | | canonicalization which would (rarely) lead to memory corruption. While I'm here, simplify. Fixes PR12166. Not committing a testcase because it's impossible to reduce it. llvm-svn: 151967
* [analyzer] do not warn about returning stack-allocated memory when it comes ↵Ted Kremenek2012-03-031-10/+18
| | | | | | from an ancestor stack frame. llvm-svn: 151964
* Frontend: Default to creating output files using temporary files + rename.Daniel Dunbar2012-03-031-1/+2
| | | | | | | | | - This is a more reliable default, as it behaves better on failure and also ensures that we create *new* files (instead of reusing existing inodes). This is useful for other applications (like lldb) which want to cache inode's to know when a file has been rewritten. llvm-svn: 151961
* Frontend: Don't automatically create missing directories when using ↵Daniel Dunbar2012-03-032-7/+22
| | | | | | | | temporary files with createOutputFile() - This would otherwise happen as a side effect of llvm::sys::fs::unique_file creating parent directories. llvm-svn: 151960
* Thread safety analysis: expand set of expressions that can be used to denote ↵DeLesley Hutchins2012-03-021-6/+50
| | | | | | locks. llvm-svn: 151956
* Reinstate r151879, r151880, reverted in r151922, along with a bugfix forRichard Smith2012-03-024-30/+49
| | | | | | | | | scalar emission of DeclRefExprs to const bools: emit scalar bools as i1, not as i8. In addition to the extra unit testing, this has successfully bootstrapped. llvm-svn: 151955
* Unbreak the CMake builds following the CallGraph change.Anna Zaks2012-03-021-1/+1
| | | | llvm-svn: 151952
* [analyzer] Rename clang::CallGraph into clang::idx::CallGraph + renameAnna Zaks2012-03-021-4/+6
| | | | | | | | | | | | | the corresponding files to avoid confusion. This is a preparation to adding an AST-based call graph to Analysis. The existing call graph works with indexer entries. We might be able to refactor it to use the AST based graph in the future. (Minimal testing here as the only example that uses the API has been completely broken, does not compile.) llvm-svn: 151950
* Adding support for #pragma include_alias in MS compatibility mode. This ↵Aaron Ballman2012-03-022-0/+126
| | | | | | implements PR 10705. llvm-svn: 151949
* Issue warning when late-parsed attributes have no declaration.DeLesley Hutchins2012-03-021-5/+3
| | | | llvm-svn: 151947
* Make late-parsed attributes follow the conventions of ordinaryDeLesley Hutchins2012-03-022-28/+49
| | | | | | | GNU attributes to a better extent, by allowing them in more places on a declator. llvm-svn: 151945
* Thread safety analysis: handle CFG blocks which call functions marked as ↵DeLesley Hutchins2012-03-021-0/+4
| | | | | | noreturn. llvm-svn: 151944
* Add -Wstring-plus-int, which warns on "str" + int and int + "str".Nico Weber2012-03-021-3/+48
| | | | | | | | It doesn't warn if the integer is known at compile time and within the bounds of the string. Discussion: http://comments.gmane.org/gmane.comp.compilers.clang.scm/47203 llvm-svn: 151943
* objc: When issue diagnostic about deprecated method, alsoFariborz Jahanian2012-03-022-3/+12
| | | | | | | issue the note if it is because message is sent to a forward class declaration in delayed diagnostic. // rdar://10290322 llvm-svn: 151942
* [analyzer diagnostics] flush locations *before* popping the current path ↵Ted Kremenek2012-03-021-10/+11
| | | | | | | | when visiting a CallEnter. Fixes <rdar://problem/10967815> llvm-svn: 151938
* Fix an ABI problem with ptrdiff_t and intptr_t on PPC32Hal Finkel2012-03-021-0/+2
| | | | | | | | | | ptrdiff_t on PPC32 on Linux, etc. should be int not long. This does not matter for C, but it does matter for C++ because of name mangling. The preprocessor test has been changed accordingly. llvm-svn: 151935
* [Sema] Fix crash-on-invalid-code issue:Argyrios Kyrtzidis2012-03-022-1/+5
| | | | | | | | | | @class I; @implementation I(cat) // crashes here @end rdar://10968158 llvm-svn: 151931
* [analyzer] Bound the size of the functions being inlined + provideAnna Zaks2012-03-024-9/+26
| | | | | | | | | | | command line options for inlining tuning. This adds the option for stack depth bound as well as function size bound. + minor doxygenification llvm-svn: 151930
* PR12094: Set the alignment of memory intrinsic instructions based on theJay Foad2012-03-022-29/+57
| | | | | | types of the pointer arguments. llvm-svn: 151927
* Change diagnostic test for my last patch.Fariborz Jahanian2012-03-021-3/+2
| | | | | | // rdar://10961370 llvm-svn: 151923
* Revert r151879, r151880, "PR12145: Avoid emitting loads of constexpr ↵Daniel Dunbar2012-03-021-15/+9
| | | | | | | | variables in contexts where there" and "Fix buildbot: make this test less dependent on the value names in the produced IR." They broke bootstrap. llvm-svn: 151922
* Use tabs instead of spaces.Benjamin Kramer2012-03-021-3/+3
| | | | | | No, really, make doesn't work with spaces. llvm-svn: 151920
* clang -v support for separate clang.git and llvm.git, patch by Andrew Trick.Jia Liu2012-03-022-10/+48
| | | | llvm-svn: 151910
* Add the Solaris support directory to the header search when using libc++.David Chisnall2012-03-022-1/+6
| | | | | | | | Unconditionally define __C99FEATURES__ when using C++ on Solaris. This is a (hopefully temporary) work around for libc++ exposing C99-but-not-C++98 features in C++98 mode. llvm-svn: 151889
* Ensure that we instantiate static reference data members of class templatesRichard Smith2012-03-022-8/+16
| | | | | | | | | early, since their values can be used in constant expressions in C++11. For odr-use checking, the opposite change is required, since references are odr-used whether or not they satisfy the requirements for appearing in a constant expression. llvm-svn: 151881
* PR12145: Avoid emitting loads of constexpr variables in contexts where thereRichard Smith2012-03-021-9/+15
| | | | | | | is no odr-use of the variable. Go slightly beyond what the standard requires for variables of reference type. llvm-svn: 151879
* [analyzer diagnostics] Change CompactPathDiagnostic to recursively compact ↵Ted Kremenek2012-03-022-20/+36
| | | | | | | | | | diagnostics in calls into macro pieces. Also fix handling of macros within calls in the HTMLDiagnostics. This also adds a test case for r151774. llvm-svn: 151872
* c/objc: problem originally reported as an objective-c bug.Fariborz Jahanian2012-03-011-0/+6
| | | | | | | | | But it is in the underlying c part of clang. clang crashes in IRGen when passing an incomplete type argument to variadic function (instead of diagnosing the bug). // rdar://10961370 llvm-svn: 151862
* Teach the analyzer to just ignore CXXBindTemporaryExpr. There's nothing ↵Ted Kremenek2012-03-011-1/+1
| | | | | | special to do with it, since destructors are represented explicitly in the CFG. llvm-svn: 151856
* Moving tagging of '__experimental_modules_import' IdentifierInfo out ofTed Kremenek2012-03-011-0/+4
| | | | | | | | | IndentifierTable::get() and into IdentifierTable's constructor. This gets a 0.7% reducing on lexing time for Cocoa.h, and about the same for PCH generation. llvm-svn: 151854
* Make CodeGenFunction::EmitBlockCopyAndAutorelease actually do what its name ↵Eli Friedman2012-03-011-4/+4
| | | | | | says. llvm-svn: 151853
* [analyzer] Turn inlining on by default for better testing exposure.Anna Zaks2012-03-012-1/+4
| | | | | | Fix a test, which was most likely an unintended recursive call. llvm-svn: 151848
* Add a flag -fthread-sanitizer.Kostya Serebryany2012-03-013-1/+20
| | | | | | | | | | This flag enables ThreadSanitizer instrumentation committed to llvm as r150423. The patch includes one test for -fthread-sanitizer and one similar test for -faddress-sanitizer. This patch does not modify the linker flags (as we do it for -faddress-sanitizer) because the run-time library is not yet committed and it's structure in compiler-rt is not 100% clear. The users manual wil be changed in a separate commit. llvm-svn: 151846
* Change @import to @__experimental_modules_import. We are not ready to ↵Ted Kremenek2012-03-016-11/+11
| | | | | | | | commit to a particular syntax for modules, and don't have time to push it forward in the near future. llvm-svn: 151841
* [analyzer] Fix a regression introduced in malloc withAnna Zaks2012-03-011-3/+7
| | | | | | | | | | attributes, introduced in r151188. + the test to catch it. Thanks to Ahmed Charles for pointing this out. llvm-svn: 151840
* Reapply r151702 with a small fix for a failure to cut and pasteEric Christopher2012-03-011-30/+61
| | | | | | | | correctly. Still rdar://10900684 llvm-svn: 151838
* Fix the isReferenced bit on parameters in a couple of edge cases. PR12153.Eli Friedman2012-03-012-0/+3
| | | | llvm-svn: 151837
* Move llvm/ADT/SaveAndRestore.h -> llvm/Support/SaveAndRestore.h.Argyrios Kyrtzidis2012-03-018-8/+8
| | | | | | Needs llvm update. llvm-svn: 151829
* StmtProfiler: Add a null check for child statements.Peter Collingbourne2012-03-011-2/+6
| | | | llvm-svn: 151812
* Implement double underscore names support in __has_attributeJean-Daniel Dupas2012-03-011-1/+6
| | | | llvm-svn: 151809
* Avoid examining the AST from the parser, and simplify somewhat.Richard Smith2012-03-011-15/+13
| | | | llvm-svn: 151805
* Revert r151800, which was committed without review and has correctness issues.Richard Smith2012-03-012-108/+0
| | | | llvm-svn: 151804
* Implements support for #pragma include_alias in ms compatibility mode. ↵Aaron Ballman2012-03-012-0/+108
| | | | | | Fixes PR10705. llvm-svn: 151800
* Added support for parsing declspecs on enumerations. Fixes PR8783Aaron Ballman2012-03-011-0/+6
| | | | llvm-svn: 151798
OpenPOWER on IntegriCloud