summaryrefslogtreecommitdiffstats
path: root/clang
Commit message (Collapse)AuthorAgeFilesLines
* Use PointerUnion::getAddrOf instead of messing with PointerUnion & ↵Argyrios Kyrtzidis2011-02-191-3/+3
| | | | | | reinterpret_cast. llvm-svn: 126021
* Change 'StoreRef' back to 'Store' in GRState, shrinking the size of GRState ↵Ted Kremenek2011-02-193-26/+50
| | | | | | back by one pointer. llvm-svn: 126020
* Fix a -Wuninitialized warning; it's actually a false positive,John McCall2011-02-191-2/+10
| | | | | | | | | but it's not reasonable for the diagnostic to figure that out. Pointed out by Benjamin Kramer. Also clarify the logic here. llvm-svn: 126017
* Warn about code that uses variables and functions with internal linkageJohn McCall2011-02-1916-42/+220
| | | | | | | | | | | | | | without defining them. This should be an error, but I'm paranoid about "uses" that end up not actually requiring a definition. I'll revisit later. Also, teach IR generation to not set internal linkage on variable declarations, just for safety's sake. Doing so produces an invalid module if the variable is not ultimately defined. Also, fix several places in the test suite where we were using internal functions without definitions. llvm-svn: 126016
* [analyzer] Fix crash when analyzing C++ code.Argyrios Kyrtzidis2011-02-193-6/+9
| | | | llvm-svn: 126013
* Add 'StoreRef' smart pointer to allow more fine-grain memory lifetime ↵Ted Kremenek2011-02-197-260/+347
| | | | | | | | | | | | control of Store objects. This yields a minor memory reduction (for larger functions) on Sqlite at the cost of slightly higher memory usage on some functions because of the increased size of GRState (which can be optimized). I expect the real memory savings from this enhancement will come when we aggressively canabilize more of the ExplodedGraph. llvm-svn: 126012
* [analyzer] Fix crash when analyzing C++ code.Argyrios Kyrtzidis2011-02-192-3/+5
| | | | llvm-svn: 126007
* [analyzer] Disable a test until inlining CXXConstructExprs is fully ↵Argyrios Kyrtzidis2011-02-191-0/+11
| | | | | | investigated. llvm-svn: 126006
* Improve bool and char integral template argument printing inChandler Carruth2011-02-192-2/+49
| | | | | | | | | diagnostics, resolving PR9227. Patch originally by Mihai Rusu and Stephen Hines with some minimal style tweaks from me. llvm-svn: 125999
* Fix a missed case in the NULL operand to conditional operatorChandler Carruth2011-02-193-1/+7
| | | | | | | | diagnostics. Patch by Stephen Hines. llvm-svn: 125998
* Update the test error messages to match the update I made to the actualChandler Carruth2011-02-191-3/+3
| | | | | | messages. llvm-svn: 125997
* Fix PR8767, improve diagnostic wording when allocating an object of anChandler Carruth2011-02-187-26/+26
| | | | | | | | abstract class type. Patch by Stephen Hines, with a wording tweak from Doug applied by me. llvm-svn: 125996
* Initial steps to improve diagnostics when there is a NULL andChandler Carruth2011-02-1810-22/+140
| | | | | | | | a non-pointer on the two sides of a conditional expression. Patch by Stephen Hines and Mihai Rusu. llvm-svn: 125995
* Check for NULL child expressions before visiting them, as the firstChandler Carruth2011-02-181-1/+2
| | | | | | thing the visit does is dyn_cast<>, which leads to a nasty segfault. llvm-svn: 125993
* When code-completing a case statement for a switch on a value ofDouglas Gregor2011-02-185-13/+29
| | | | | | | enumeration type, prioritize the enumeration constants and don't provide completions for any other expressions. Fixes <rdar://problem/7283668>. llvm-svn: 125991
* Start using enums from DIBuilder.Devang Patel2011-02-181-9/+9
| | | | llvm-svn: 125990
* More correct fix for CMake breakage I was seeing, my buildbots useDaniel Dunbar2011-02-182-1/+3
| | | | | | LLVM_INCLUDE_TESTS:=OFF, which may no longer be necessary for all I know. llvm-svn: 125985
* Update text for where to file analyzer bugs.Ted Kremenek2011-02-181-1/+1
| | | | llvm-svn: 125983
* Test case for // rdar://8850818Fariborz Jahanian2011-02-181-0/+14
| | | | llvm-svn: 125982
* If -fno-builtin is passed, tell TargetLibraryInfo toChris Lattner2011-02-181-2/+9
| | | | | | turn off all builtin optimizations. llvm-svn: 125979
* Selector::getIdentifierInfoForSlot() can return NULL values, a factDouglas Gregor2011-02-188-23/+72
| | | | | | | | | | | | that was ignored in a few places (most notably, code completion). Introduce Selector::getNameForSlot() for the common case where we only care about the name. Audit all uses of getIdentifierInfoForSlot(), switching many over to getNameForSlot(), fixing a few crashers. Fixed <rdar://problem/8939352>, a code-completion crasher. llvm-svn: 125977
* Unbreak CMake build on MSVC9, chapuni please check.Daniel Dunbar2011-02-181-1/+1
| | | | | | | | | | | Without this I get: -- -- Generating done CMake Error: Unknown Target referenced : check.deps CMake Error: Target: check-all depends on unknown target: check.deps -- llvm-svn: 125976
* install a TargetLibraryInfo configured with the appropriate Chris Lattner2011-02-181-3/+12
| | | | | | | target triple. This would be a decent place to add -fno-builtin info for example. llvm-svn: 125971
* [analyzer] Fix crash when analyzing C++ code.Argyrios Kyrtzidis2011-02-182-0/+20
| | | | llvm-svn: 125963
* fix rdar://9024687, a crash on invalid that we used to silently ignore.Chris Lattner2011-02-184-2/+11
| | | | llvm-svn: 125962
* [analyzer] Fix a crash when analyzing C++ code.Argyrios Kyrtzidis2011-02-182-1/+8
| | | | llvm-svn: 125958
* Introduce ASTContext::getLogicalOperationType() to return bool or int, ↵Argyrios Kyrtzidis2011-02-182-3/+8
| | | | | | | | depending on language. No functionality change. llvm-svn: 125957
* Objective-c armv7 API for atomic properties of Fariborz Jahanian2011-02-183-97/+152
| | | | | | scalar types. // rdar://7761305 llvm-svn: 125946
* accept and ignore a few things for better OpenBSD compatibility,Chris Lattner2011-02-182-1/+3
| | | | | | patch by Amit Kulkarni! llvm-svn: 125944
* [Heikki Kultala] This patch contains the ABI changes for the TCE target.NAKAMURA Takumi2011-02-181-2/+2
| | | | | | TCE target has some too strict alignment rules (that the HW really does not require, but which caused problems elsewhere) for data types and an ABI change was decided. llvm-svn: 125833
* we now support __label__Chris Lattner2011-02-181-4/+0
| | | | llvm-svn: 125826
* Implement C++0x [expr.static.cast]p9, which permits explicitly castingDouglas Gregor2011-02-182-10/+44
| | | | | | | | | | a scoped enumeration type to an integral or floating type, properly. There was an over-eager assertion, and it was missing the floating-point case. Fixes PR9107/<rdar://problem/8937402>. llvm-svn: 125825
* The flags we're supposed to write into a byref struct are *not* theJohn McCall2011-02-183-22/+67
| | | | | | | | | | | | _Block_object_* flags; it's just BLOCK_HAS_COPY_DISPOSE or not. Also, we don't need to chase forwarding pointers prior to calling _Block_object_dispose; _Block_object_dispose in fact already does this. rdar://problem/9006315 llvm-svn: 125823
* When building a qualified reference to a member of an anonymous structDouglas Gregor2011-02-182-6/+28
| | | | | | | | | or union, place the qualifier on the outermost member reference expression, which actually contains the entity name. Fixes PR9188/<rdar://problem/8990184>. llvm-svn: 125822
* Fix assertion failure on -Warray-bounds for 32-bit builds of Clang.Ted Kremenek2011-02-182-1/+10
| | | | llvm-svn: 125821
* Move CompilerInstance::LLVMContext and LLVMContext ownership to CodeGenActionPeter Collingbourne2011-02-1816-88/+53
| | | | | | | | | This removes the final dependency edge from any lib outside of CodeGen to core. As a result we can, and do, trim the dependency on core from libclang, PrintFunctionNames, the unit tests and c-index-test. While at it, review and trim other unneeded dependencies. llvm-svn: 125820
* Move TargetInfo::adjustInlineAsmType to TargetCodeGenInfoPeter Collingbourne2011-02-185-24/+36
| | | | llvm-svn: 125819
* When we're creating an expression for an integral template argument ofDouglas Gregor2011-02-182-2/+28
| | | | | | | | | | | | | enumeration type, we were generating an integer literal implicitly casted to the appropriate enumeration type. However, later checks on that expression would strip the implicit cast. This commit tweaks the lame hack, by creating an explicit cast instead of an implicit cast. The right answer is to introduce a SubstNonTypeTemplateParmExpr expression that acts like the substituted result. I'll investigate that soon. llvm-svn: 125818
* implement basic support for __label__. I wouldn't be shocked if there areChris Lattner2011-02-187-11/+78
| | | | | | | | | bugs from other clients that don't expect to see a LabelDecl in a DeclStmt, but if so they should be easy to fix. This implements most of PR3429 and rdar://8287027 llvm-svn: 125817
* rename testChris Lattner2011-02-181-0/+0
| | | | llvm-svn: 125816
* Handle UsingDecl in CFGRecStmtDeclVisitor.Argyrios Kyrtzidis2011-02-181-0/+2
| | | | llvm-svn: 125814
* Switch labels over to using normal name lookup, instead of their Chris Lattner2011-02-1811-151/+72
| | | | | | | own weird little DenseMap. Hey look, we now emit unused label warnings deterministically, amazing. llvm-svn: 125813
* Unbreak the MSVC buildFrancois Pichet2011-02-181-1/+1
| | | | | | | std::make_pair is unreliable under MSVC 2010. Ref: http://stackoverflow.com/questions/2691680/why-does-visual-studio-2010-throw-this-error-with-boost-1-42-0 llvm-svn: 125811
* break testcase over multiple lines to make it easier to read.Chris Lattner2011-02-181-3/+11
| | | | llvm-svn: 125810
* handle labeldecls.Chris Lattner2011-02-181-1/+6
| | | | llvm-svn: 125806
* make block bodies handle undefined labels just like functions.Chris Lattner2011-02-172-8/+5
| | | | llvm-svn: 125799
* improve support for big endian targets, fixing PR8171, patchChris Lattner2011-02-172-3/+16
| | | | | | by Heikki Kultala! llvm-svn: 125784
* CMake: updated source file list.Oscar Fuentes2011-02-171-0/+1
| | | | llvm-svn: 125783
* Add -Warray-bounds test showing how the warning currently interoperates with ↵Ted Kremenek2011-02-171-0/+11
| | | | | | macros. llvm-svn: 125781
* [analyzer] Use the new registration mechanism for the debugging info "checks".Argyrios Kyrtzidis2011-02-179-38/+100
| | | | | | | | | | The relative checker package is 'debug': '-dump-live-variables' is replaced by '-analyzer-checker=debug.DumpLiveVars' '-cfg-view' is replaced by '-analyzer-checker=debug.ViewCFG' '-cfg-dump' is replaced by '-analyzer-checker=debug.DumpCFG' llvm-svn: 125780
OpenPOWER on IntegriCloud