summaryrefslogtreecommitdiffstats
path: root/clang
Commit message (Collapse)AuthorAgeFilesLines
* Ignore indirect field declarations. Fixes PR9570.John McCall2011-04-122-0/+12
| | | | llvm-svn: 129337
* Formatting.John McCall2011-04-121-11/+8
| | | | llvm-svn: 129336
* This test works now; enable it.John McCall2011-04-121-18/+16
| | | | llvm-svn: 129335
* RegionStoreManager::invalidateRegions: treat classes the same as structs.Ted Kremenek2011-04-122-3/+17
| | | | llvm-svn: 129333
* After some discussion with Doug, we decided that it made a lot more senseJohn McCall2011-04-1219-355/+282
| | | | | | | | | for __unknown_anytype resolution to destructively modify the AST. So that's what it does now, which significantly simplifies some of the implementation. Normal member calls work pretty cleanly now, and I added support for propagating unknown-ness through &. llvm-svn: 129331
* Teach GRState::getSValAsScalarOrLoc() about C++ references.Ted Kremenek2011-04-122-1/+11
| | | | llvm-svn: 129329
* C++ static analysis: also invalidate fields of objects that are the callees ↵Ted Kremenek2011-04-114-7/+67
| | | | | | in C++ method calls. llvm-svn: 129308
* Typo.Fariborz Jahanian2011-04-111-1/+1
| | | | llvm-svn: 129301
* Fixup more objc rwriter bug having to do withFariborz Jahanian2011-04-114-12/+35
| | | | | | | rewriting of blocks which have objective-c stuff which need be rewritten as well. // rdar://9254348 llvm-svn: 129300
* fix the path to ld.so for darwin/ppc, resolving PR9677. PatchChris Lattner2011-04-111-2/+2
| | | | | | by Jeremy Huddleston! llvm-svn: 129299
* If there's an invoke destination, we should use invoke instead of call when ↵Anders Carlsson2011-04-112-7/+43
| | | | | | calling the __cxa_bad_typeid function. Fixes PR7400. llvm-svn: 129273
* More __unknown_anytype work.John McCall2011-04-1117-120/+413
| | | | llvm-svn: 129269
* Remove CK_DynamicToNull.Anders Carlsson2011-04-1110-27/+3
| | | | llvm-svn: 129265
* When we know that a dynamic_cast always returns null, we can makeAnders Carlsson2011-04-112-10/+51
| | | | | | | CodeGenFunction::EmitDynamicCast always return null or throw a bad_cast exception. llvm-svn: 129264
* Add CXXDynamicCastExpr::isAlwaysNull() which will be replacing the cast kind ↵Anders Carlsson2011-04-112-0/+32
| | | | | | I added. llvm-svn: 129263
* Clean up CodeGenFunction::EmitDynamicCast. No functionality change.Anders Carlsson2011-04-111-104/+141
| | | | llvm-svn: 129262
* Replace a couple of Builder.CreateICmpEQ with Builder.CreateIsNull. No ↵Anders Carlsson2011-04-112-9/+3
| | | | | | functionality change. llvm-svn: 129261
* PR9669: implement correct checking for [dcl.init.string]p2.Eli Friedman2011-04-114-7/+20
| | | | llvm-svn: 129260
* Remove the CodeGenCXX/dyncast.cpp test; it isn't really super useful to ↵Anders Carlsson2011-04-101-367/+0
| | | | | | match on huge chunks of LLVM output. llvm-svn: 129258
* As a first step towards fixing PR9641, add a CK_DynamicToNull cast kind whichAnders Carlsson2011-04-1010-3/+27
| | | | | | | | | | | | | | | | | | represents a dynamic cast where we know that the result is always null. For example: struct A { virtual ~A(); }; struct B final : A { }; struct C { }; bool f(B* b) { return dynamic_cast<C*>(b); } llvm-svn: 129256
* Simplify calling CheckPlaceholderExpr, converge on it in a few places,John McCall2011-04-107-71/+50
| | | | | | and move a vector-splat check to follow l-value conversion. llvm-svn: 129254
* Strip off parens and no-op casts when deciding if an expr can be ↵Anders Carlsson2011-04-102-1/+35
| | | | | | devirtualized. Fixes the second half of PR9660. llvm-svn: 129253
* Change CollectPrimaryBases to collect the bases in the right order. Fixes ↵Anders Carlsson2011-04-102-7/+31
| | | | | | one half of PR9660. llvm-svn: 129252
* Make -fdump-vtable-layouts also dump vtable indices for all virtual member ↵Anders Carlsson2011-04-101-0/+42
| | | | | | functions in the class. llvm-svn: 129250
* Reflect rename on LLVM cmake file.Oscar Fuentes2011-04-101-1/+1
| | | | llvm-svn: 129246
* Enhance the diagnostic for literal float -> int conversions to suggestChandler Carruth2011-04-104-11/+51
| | | | | | | | | | | | rewriting the literal when the value is integral. It is not uncommon to see code written as: const int kBigNumber = 42e5; Without any real awareness that this is no longer an ICE. The note helps automate and ease the process of fixing code that violates the warning. llvm-svn: 129243
* Refactor 129240 to merge the old default argument into the new parameter.Francois Pichet2011-04-101-5/+13
| | | | llvm-svn: 129242
* PR9580: Handle vectors correctly in ScalarExprEmitter::EmitRem.Eli Friedman2011-04-102-10/+126
| | | | | | | While I'm here, FileCheck-ize the ext-vector test, so we actually check what it is generating. llvm-svn: 129241
* MSVC accepts that default parameters be redefined for member functionsFrancois Pichet2011-04-103-3/+25
| | | | | | | | of template class. The new value is ignored. This fixes 1 error when parsing MSVC 2010 header files with clang. llvm-svn: 129240
* libclang output name is now libclang. This solves a name collisionOscar Fuentes2011-04-101-2/+2
| | | | | | | | | | when building with Visual Studio. `clang.dll' and `clang.exe' would have the same `clang.ilk' and `clang.pdb'. On a serial build those files would be overwritten as clang.exe/clang.dll are created. On a parallel build there is a risk of both files being written at the same time. On that case VS fails. llvm-svn: 129239
* Fix a bunch of major problems with __unknown_anytype and properly testJohn McCall2011-04-0914-39/+223
| | | | | | for them. The only major missing feature is references. llvm-svn: 129234
* Make sure we or together the overflow flags of the multiply and add, so theEli Friedman2011-04-092-2/+3
| | | | | | check is triggered appropriately. Reported on cfe-dev. llvm-svn: 129231
* strcat() and strncat() model additions to CStringChecker.Lenny Maiorani2011-04-092-9/+222
| | | | | | Validates inputs are not NULL, checks for overlapping strings, concatenates the strings checking for buffer overflow, sets the length of the destination string to the sum of the s1 length and the s2 length, binds the return value to the s1 value. llvm-svn: 129215
* refactor flags for TokenKinds.defDylan Noblesmith2011-04-091-12/+12
| | | | | | | | Make KEYALL a combination of all other flags instead of its own separate flag. Also rewrite the enum definitions in hex instead of decimal. llvm-svn: 129213
* refactor -ccc-gcc-name codeDylan Noblesmith2011-04-093-18/+24
| | | | | | | | | | | | Put the logic for deciding the default name for gcc/g++ in the only place that actually cares about it. This also pushes an ifdef out of the generic driver code to a little further down, when the target is actually known. Hopefully it can be changed into just a runtime check in the future. llvm-svn: 129212
* PR8369: make __attribute((regparm(0))) work correctly. Original patch byEli Friedman2011-04-0911-22/+44
| | | | | | pageexec@freemail.hu, tweaks by me. llvm-svn: 129206
* Clean up the bool conversion warning. Group it with other conversionChandler Carruth2011-04-093-11/+12
| | | | | | | warnings, and make its text appropriate for constant bool expressions other than 'false'. This should finish off PR9612. llvm-svn: 129205
* Add support for warning on general null pointer expressions of booleanChandler Carruth2011-04-092-6/+13
| | | | | | | type rather than just the literal 'false'. This begins fixing PR9612, but the message is now wrong. WIP, the cleanup of the messaging is next. llvm-svn: 129204
* fix indentationChris Lattner2011-04-091-7/+6
| | | | llvm-svn: 129202
* accept -x objc-cpp-output as an alias for -x objective-c-cpp-output,Chris Lattner2011-04-091-0/+1
| | | | | | per PR9577 llvm-svn: 129201
* add a __sync_swap builtin to fill out the rest of the __sync builtins. Chris Lattner2011-04-095-1/+55
| | | | | | Patch by Dave Zarzycki! llvm-svn: 129189
* Convert the PointerWidthInBytes variable in EmitMemberPointer() to CharUnitsKen Dyck2011-04-091-4/+4
| | | | | | to eliminate a divide-by-8. No change in functionality intended. llvm-svn: 129180
* Eliminate a divide-by-8 in BuildVMIClassTypeInfo() by using CharUnits forKen Dyck2011-04-091-4/+5
| | | | | | the base offset. No change in functionality intended. llvm-svn: 129179
* Remove a pair of unused diagnostic messages.Eric Christopher2011-04-091-5/+0
| | | | llvm-svn: 129178
* Apply explicit braces to avoid ambiguous 'else' [-Wparentheses]Nick Lewycky2011-04-091-2/+2
| | | | llvm-svn: 129176
* Eat the UTF-8 BOM at the beginning of a file since it's ignored anyhow.Eric Christopher2011-04-092-7/+19
| | | | | | | | Nom Nom Nom. Patch by Anton Korobeynikov! llvm-svn: 129174
* complete documentation of flags, patch by nobledChris Lattner2011-04-081-0/+1
| | | | llvm-svn: 129173
* Fixes a rewrting bug of a property-dot syntax expression insideFariborz Jahanian2011-04-082-0/+28
| | | | | | a block. First part of // rdar://9254348 llvm-svn: 129171
* Properly traverse a ObjCMethodDecl in RecursiveASTVisitor.Argyrios Kyrtzidis2011-04-081-3/+11
| | | | llvm-svn: 129169
* typo fix + expandChris Lattner2011-04-081-2/+2
| | | | llvm-svn: 129167
OpenPOWER on IntegriCloud