summaryrefslogtreecommitdiffstats
path: root/clang
Commit message (Collapse)AuthorAgeFilesLines
* Since the 'is aliased' bit is critical for correctness in C++, itJohn McCall2011-08-264-6/+23
| | | | | | | | | really shouldn't be optional. Fix the remaining place where a temporary was being passed as potentially-aliased memory. Fixes PR10756. llvm-svn: 138627
* An initialization does not alias.John McCall2011-08-262-1/+6
| | | | llvm-svn: 138624
* Take 2: Actually fix spacing.Chad Rosier2011-08-261-3/+2
| | | | llvm-svn: 138617
* Be sure to do unary conversions on the operand to an ARCJohn McCall2011-08-261-0/+4
| | | | | | bridged cast. Noticed by AST inspection by Ted Kremenek! llvm-svn: 138616
* The allocated exception slot does not alias anything; should fix self-host.John McCall2011-08-262-1/+15
| | | | llvm-svn: 138615
* 80-column.Chad Rosier2011-08-261-1/+2
| | | | llvm-svn: 138614
* Handle CXXTempObjectRegion in StackAddrEscapeChecker.Jeffrey Yasskin2011-08-265-19/+28
| | | | | | | | Also convert stack-addr-ps.cpp to use the analyzer instead of just Sema, now that it doesn't crash, and extract the stack-block test into another file since it errors, and that prevents the analyzer from running. llvm-svn: 138613
* [driver] Add -mglobal-merge/-mno-global-merge machine options to ↵Chad Rosier2011-08-267-0/+30
| | | | | | | | | enable/disable merging of globals during codegen. Fixes <rdar://problem/10017909>. llvm-svn: 138612
* revert 138610, accidental commit.Francois Pichet2011-08-261-12/+2
| | | | llvm-svn: 138611
* (no commit message)Francois Pichet2011-08-261-2/+12
| | | | llvm-svn: 138610
* [analyzer] Increase the number of possible checks for a checker.Jordy Rose2011-08-261-6/+13
| | | | llvm-svn: 138609
* PNaClTargetInfo: add __ELF__, _REENTRANT and _GNU_SOURCE defines and update ↵Ivan Krasin2011-08-252-0/+26
| | | | | | the test llvm-svn: 138607
* Fix a crash-on-invalid.Matt Beaumont-Gay2011-08-252-1/+8
| | | | | | | | Much to everyone's surprise, the default constructor for TypeResult produces an instance with Invalid == false. This seems like a decision we may want to revisit. llvm-svn: 138601
* Track whether an AggValueSlot is potentially aliased, and do notJohn McCall2011-08-2517-71/+108
| | | | | | | | | | emit call results into potentially aliased slots. This allows us to properly mark indirect return slots as noalias, at the cost of requiring an extra memcpy when assigning an aggregate call result into a l-value. It also brings us into compliance with the x86-64 ABI. llvm-svn: 138599
* Don't warn on category implementing a method, if Fariborz Jahanian2011-08-252-1/+14
| | | | | | | declated method in the class belongs to a synthesized property getter/setter. // rdar://10014946 llvm-svn: 138598
* Eliminate the -chained-pch flag and all of the frontend and libclang options ↵Douglas Gregor2011-08-2516-46/+14
| | | | | | associated with it. Chained PCH is the only way to build a PCH file that includes another PCH file llvm-svn: 138597
* Remove the Chaining argument from the PCH/module generator. It's no longer usedDouglas Gregor2011-08-256-30/+13
| | | | llvm-svn: 138596
* Introduce a -cc1 option "-emit-module", that creates a binary moduleDouglas Gregor2011-08-2525-67/+99
| | | | | | | | | from the given source. -emit-module behaves similarly to -emit-pch, except that Sema is somewhat more strict about the contents of -emit-module. In the future, there are likely to be more interesting differences. llvm-svn: 138595
* objc - fix a bug exposed by my recent decl contextFariborz Jahanian2011-08-252-0/+12
| | | | | | changes. // rdar://10015110 llvm-svn: 138594
* [libclang] Fix getting a cursor that points inside tag definition that is partArgyrios Kyrtzidis2011-08-254-2/+24
| | | | | | | | | | | | | | | of a type specifier. e.g. for: typedef struct _MyS { int foo; } MyS; pointing at field 'foo' would give a cursor for the typedef declaration 'MyS' instead of the field. llvm-svn: 138593
* Clean up the reloading of identifier information following the load ofDouglas Gregor2011-08-251-58/+41
| | | | | | | a top-level module. This code is still horrible and should go away, but we're not there yet. llvm-svn: 138586
* Preload source location entries as soon as we've loaded a particularDouglas Gregor2011-08-253-14/+18
| | | | | | | AST file, rather than waiting until we finish loading the top-level AST file. llvm-svn: 138585
* Reverse r138567 until a buildbot failure is investigated.Fariborz Jahanian2011-08-255-40/+31
| | | | llvm-svn: 138584
* Move file validation in the ASTReader from "top of chain" validationDouglas Gregor2011-08-252-66/+64
| | | | | | | to "when loading a particular module" validation, since it was only validating local information anyway. This shouldn't change anything. llvm-svn: 138583
* Factor the Module and ModuleManager classes out into separate headersDouglas Gregor2011-08-258-1177/+1373
| | | | | | | and .cpp files, since ASTReader.cpp was getting way too large. No functionality change. llvm-svn: 138582
* Use stronger typing for the flags on AggValueSlot and requireJohn McCall2011-08-2511-60/+87
| | | | | | | creators to tell us whether something needs GC barriers. No functionality change. llvm-svn: 138581
* Make Lexer::ComputePreamble accept a LangOptions parameter, otherwise it may beArgyrios Kyrtzidis2011-08-255-8/+11
| | | | | | out-of-sync how a file is compiled. Patch by Matthias Kleine! llvm-svn: 138580
* 80-column and spacing.Chad Rosier2011-08-251-2/+3
| | | | llvm-svn: 138578
* Teach -Wunreachable-code about dead code caused by macro expansions. This ↵Ted Kremenek2011-08-252-4/+20
| | | | | | should suppress false positives resulting from 'assert' and friends. llvm-svn: 138576
* Switch ASTReader::GetHeaderFileInfo() from a walk over the moduleDouglas Gregor2011-08-252-20/+49
| | | | | | chain to a proper search. llvm-svn: 138574
* Switch the forward walk through the module chain over to a depth-firstDouglas Gregor2011-08-251-9/+30
| | | | | | search in ASTReader::ReadPreprocessedEntities(). llvm-svn: 138572
* Fixes a typo in my last patch.Fariborz Jahanian2011-08-251-1/+1
| | | | llvm-svn: 138571
* objc -arse: Use DeclGroup for forward class declarations;Fariborz Jahanian2011-08-255-31/+40
| | | | | | as in @class foo, bar. More cleanup to follow. llvm-svn: 138567
* [driver] Do not add -kext to the link command line when compiling with Chad Rosier2011-08-252-32/+0
| | | | | | | -fapple-kext. Fixes <rdar://problem/10013310>. Reverts <rdar://problem/7809940>. llvm-svn: 138564
* Remove a bogus assertion from the AST reader, which assumed thatDouglas Gregor2011-08-252-12/+67
| | | | | | | | | | redeclarations of a particular entity would occur in source order. Friend declarations that occur within class templates (or member classes thereof) do not follow this, nor would modules. Big thanks to Erik Verbruggen for reducing this problem from the Very Large Qt preamble testcase he found. llvm-svn: 138557
* Use the module manager's search facility to look for methods with aDouglas Gregor2011-08-255-47/+116
| | | | | | | | | given selector, rather than walking the chain backwards. Teach its visitor how to merge multiple result sets into a single result set, combining the results of selector lookup in several different modules into a single result set. llvm-svn: 138556
* [analyzer] Move the leak bugs from CFRefCount to RetainReleaseChecker, with ↵Jordy Rose2011-08-251-50/+56
| | | | | | a level of indirection to handle GC vs. non-GC. llvm-svn: 138538
* [analyzer] MacOSKeychainAPIChecker: Cleanup AllocationState structure.Anna Zaks2011-08-251-11/+10
| | | | llvm-svn: 138535
* Add support for Microsoft __ptr32 keyword. Francois Pichet2011-08-254-2/+17
| | | | | | Patch by Chris Cudmore! llvm-svn: 138533
* [analyzer] Move the easy bug types from CFRefCount to RetainReleaseChecker.Jordy Rose2011-08-251-41/+28
| | | | | | (These bug types may have just been leaked before...!) llvm-svn: 138532
* [analyzer] MacOSKeychainAPIChecker: Add the custom BugReport visitor(which ↵Anna Zaks2011-08-251-11/+16
| | | | | | highlights the allocation site) to all the relevant reports within the checker. llvm-svn: 138531
* [analyzer] Move the RetainSummaryManager from CFRefCount to ↵Jordy Rose2011-08-251-29/+34
| | | | | | | | RetainReleaseChecker. Because Checkers live for an entire translation unit, this persists summary caches across multiple code bodies and avoids repeated initialization (but probably at the cost of memory). This removes the last references from RetainReleaseChecker to CFRefCount. llvm-svn: 138529
* blocks - capturing logic of byref block variable's expression Fariborz Jahanian2011-08-251-1/+17
| | | | | | | statement initializer makes safe assumption when a substatement is encounterred (with a fix me). llvm-svn: 138528
* [analyzer] Better fix for the "missing return" error, from Ted.Jordy Rose2011-08-241-3/+3
| | | | llvm-svn: 138526
* [analyzer] Silence another incorrect warning ("control reaches end of ↵Jordy Rose2011-08-241-0/+3
| | | | | | non-void function") llvm-svn: 138510
* [analyzer] Remove experimental FIXME that never actually applied to the code ↵Jordy Rose2011-08-241-2/+0
| | | | | | in trunk. llvm-svn: 138508
* [analyzer] CFRefReport and friends no longer depend on CFRefCount.Jordy Rose2011-08-241-39/+46
| | | | llvm-svn: 138506
* Remove long-dead FIXMEDouglas Gregor2011-08-241-2/+0
| | | | llvm-svn: 138498
* [analyzer] Do not use references in std::pair.Anna Zaks2011-08-241-4/+4
| | | | llvm-svn: 138497
* Don't force the complete deserialization of the visible-declarationsDouglas Gregor2011-08-249-101/+1
| | | | | | | | | | table when serializing an AST file. This was a holdover from the days before chained PCH, and is a complete waste of time and storage now. It's a good thing it's useless, because I have no idea how I would have implemented MaterializeVisibleDecls efficiently in the presence of modules. llvm-svn: 138496
OpenPOWER on IntegriCloud