summaryrefslogtreecommitdiffstats
path: root/clang/lib
Commit message (Collapse)AuthorAgeFilesLines
* Implement instantiation of noexcept spec and add a test case.Sebastian Redl2011-03-141-1/+7
| | | | llvm-svn: 127603
* Make deallocation functions implicitly noexcept in C++0x.Sebastian Redl2011-03-143-9/+41
| | | | llvm-svn: 127596
* Fix link of libxul with LTO and the linker in xcode4. It is not clear if thisRafael Espindola2011-03-141-1/+4
| | | | | | | is working around a bug in ld or if the new linker has a reasonable reason for wanting the string constant to be linker visible. llvm-svn: 127594
* -fwritable-strings should silence warnings about the deprecated stringDouglas Gregor2011-03-141-1/+2
| | | | | | -literal to char* conversion. Make it so. llvm-svn: 127586
* Block return type of the initialized must beFariborz Jahanian2011-03-141-6/+8
| | | | | | | | be more speciaclized than that of the initializer, when matching protocol qualifier list. // rdar:// 9118343. llvm-svn: 127585
* Support Ubuntu hardy and intrepid, from Thomas Gamper!Douglas Gregor2011-03-141-2/+10
| | | | llvm-svn: 127583
* Add include paths for Gentoo Linux, from Marcin Mirosław!Douglas Gregor2011-03-141-2/+22
| | | | llvm-svn: 127582
* Fix incorrect linkage specifiers for selectors.David Chisnall2011-03-141-2/+2
| | | | llvm-svn: 127580
* Get rid of the static FileManager::FixupRelativePath.Anders Carlsson2011-03-142-9/+5
| | | | llvm-svn: 127573
* Add an Objective-C checker that checks that arguments passed to some ↵Anders Carlsson2011-03-132-0/+146
| | | | | | | | variadic Objective-C methods are of Objective-C pointer types. Ted or Argiris, I'd appreciate a review! llvm-svn: 127572
* Instead of storing an ASTContext* in FunctionProtoTypes with computed ↵Sebastian Redl2011-03-1310-39/+35
| | | | | | noexcept specifiers, unique FunctionProtoTypes with a ContextualFoldingSet, as suggested by John McCall. llvm-svn: 127568
* Fix CFG assertion failure reported in PR 9467. This was due to recent ↵Ted Kremenek2011-03-131-8/+11
| | | | | | changes in optimizing CFGs for switch statements. llvm-svn: 127563
* Place duplicate argument declaration in inFariborz Jahanian2011-03-122-10/+15
| | | | | | | method prototypes under the -Wduplicate-method-arg and turn it off by default. llvm-svn: 127552
* Revert "Disable delegating constructors for 2.9"Sebastian Redl2011-03-121-5/+1
| | | | | | It is only meant for the release branch. llvm-svn: 127544
* Disable delegating constructors for 2.9Sebastian Redl2011-03-121-1/+5
| | | | llvm-svn: 127543
* Revert "Disable inherited constructors for 2.9."Sebastian Redl2011-03-121-7/+3
| | | | | | It is only meant for the release branch. llvm-svn: 127542
* Disable inherited constructors for 2.9.Sebastian Redl2011-03-121-3/+7
| | | | llvm-svn: 127541
* Use CharUnits for argument passed to AppendPadding() from AppendBitField().Ken Dyck2011-03-121-5/+6
| | | | | | No change in functionality intended. llvm-svn: 127538
* Propagate the new exception information to FunctionProtoType.Sebastian Redl2011-03-1222-183/+528
| | | | | | | | Change the interface to expose the new information and deal with the enormous fallout. Introduce the new ExceptionSpecificationType value EST_DynamicNone to more easily deal with empty throw specifications. Update the tests for noexcept and fix the various bugs uncovered, such as lack of tentative parsing support. llvm-svn: 127537
* Forgotten part of previous commit.Abramo Bagnara2011-03-129-30/+36
| | | | llvm-svn: 127536
* Renamed OffsetOfNode::getRange to getSourceRange for uniformity.Abramo Bagnara2011-03-122-4/+4
| | | | llvm-svn: 127534
* Re-enable the IdempotentOperations checker for --analyze, and put it and the ↵Ted Kremenek2011-03-122-6/+11
| | | | | | DeadStores checker into the "deadcode" group. llvm-svn: 127531
* Don't have side-effects (or rather non-trivial computation) in StringSwitch ↵Ted Kremenek2011-03-121-6/+9
| | | | | | "cases." llvm-svn: 127528
* Add initial version of "IteratorsChecker", a checker to find misues uses of ↵Ted Kremenek2011-03-123-0/+585
| | | | | | | | | C++ iterators. This checker was created by Jim Goodnow II, and I migrated it to the new Checker interface (recent changes by Argiris). llvm-svn: 127525
* Fix comments, and force auto progagation in VisitAggExpr.Ted Kremenek2011-03-121-1/+4
| | | | llvm-svn: 127524
* static analyzer: Handle 'ExprWithCleanups' in ExprEngine by essentially ↵Ted Kremenek2011-03-121-1/+1
| | | | | | ignoring them. llvm-svn: 127523
* Fixes for some more expressions containing function templateids thatDouglas Gregor2011-03-124-58/+92
| | | | | | should be resolvable, from Faisal Vali! llvm-svn: 127521
* When we're determining whether to complain about a conversion from oneDouglas Gregor2011-03-121-1/+20
| | | | | | | | enumeration type to another in C, classify enumeration constants as if they had the type of their enclosing enumeration. Fixes <rdar://problem/9116337>. llvm-svn: 127514
* Change parameter to AppendPadding from bytes to CharUnits. No change inKen Dyck2011-03-111-11/+11
| | | | | | functionality intended. llvm-svn: 127513
* Don't ask if a depenendent CXXRecordDecl has any dependent basesDouglas Gregor2011-03-111-1/+2
| | | | | | | unless we already know that it has a definition. Fixes PR9449/<rdar://problem/9115785>. llvm-svn: 127512
* Implement a hack intended to allow Clang to parse libstdc++ 4.5'sDouglas Gregor2011-03-111-1/+10
| | | | | | | | | | | headers, which use C++0x generalized initializer lists. Per PR7069, it appears that the only use is as the return type of a function, so this commit enables this extension just in that narrow case. If it's enough for libstdc++ 4.5, or if it can be trivially extended to work with libstdc++ 4.5, we'll keep it. Otherwise, or if this breaks anything, we'll revert and wait for the real feature. llvm-svn: 127507
* Use a slightly more semantic interface for emitting call arguments.John McCall2011-03-116-47/+40
| | | | llvm-svn: 127494
* OpenCL: if double precision floating point constant encounteredPeter Collingbourne2011-03-111-3/+8
| | | | | | without cl_khr_fp64, warn and cast to single precision llvm-svn: 127476
* Add support for the OpenCL vec_step operator, by generalising andPeter Collingbourne2011-03-1125-179/+291
| | | | | | | extending the existing support for sizeof and alignof. Original patch by Guy Benyei. llvm-svn: 127475
* Fix PR9453 by not trying to print a warning about ignored qualifiersRafael Espindola2011-03-111-0/+1
| | | | | | in conversion functions. llvm-svn: 127460
* When comparing a null pointer and something else, always cast the nullJohn McCall2011-03-111-15/+26
| | | | | | pointer instead of the other operand. llvm-svn: 127458
* Convert the RecordSize parameter of AppendTailPadding() to CharUnits toKen Dyck2011-03-111-8/+6
| | | | | | | avoid converting to bits and back again. No change in functionality intended. llvm-svn: 127455
* Overload IntExprEvaluator::Success() with a function that takes a CharUnitsKen Dyck2011-03-111-5/+10
| | | | | | parameter to tidy up the places where the expression is a size. llvm-svn: 127454
* Profiling showed that 'CheckImplicitConversions' was very slow because of ↵Ted Kremenek2011-03-101-9/+43
| | | | | | | | | | | the call to getSpellingLoc(). On 'aes.c' in the LLVM test suite, this function was consuming 7.4% of -fsyntax-only time. This change fixes this issue by delaying the check that the warning would be issued within a system macro by as long as possible. The main negative of this change is now the logic for this check is done in multiple places in this function instead of just in one place up front. llvm-svn: 127425
* lib/CodeGen/CGCall.cpp: Don't invoke multiple Builder.CreateBitCast() on ↵NAKAMURA Takumi2011-03-101-2/+4
| | | | | | Builder.CreateMemCpy. Or we would see sideeffect incompatibility among gcc and clang. llvm-svn: 127405
* Avoid do drop outer template parameter lists on the floor.Abramo Bagnara2011-03-103-8/+18
| | | | llvm-svn: 127404
* Fixed class type generation for MemberPointerType.Abramo Bagnara2011-03-101-5/+6
| | | | llvm-svn: 127401
* When doing reachability analysis for warnings issued under ↵Ted Kremenek2011-03-103-18/+82
| | | | | | | | | DiagRuntimeBehavior, don't construct a ParentMap or CFGStmtMap. Instead, create a small set of Stmt* -> CFGBlock* mappings during CFG construction for only the statements we care about relating to the diagnostics we want to check for reachability. llvm-svn: 127396
* Instead of round up sizes to '8', round them up to the alignment of the charKen Dyck2011-03-101-2/+4
| | | | | | type. llvm-svn: 127391
* Round up the non-virtual size to the next char instead of rounding down.Ken Dyck2011-03-101-2/+3
| | | | llvm-svn: 127390
* Require AddStmtChoice::alwaysAdd() to take a CFGBuilder& and Stmt*. Prep ↵Ted Kremenek2011-03-101-15/+22
| | | | | | for functionality changes. llvm-svn: 127387
* Remove unused 'AddStmtChoice' argument to CFGBuilder::appendStmt().Ted Kremenek2011-03-101-25/+24
| | | | llvm-svn: 127386
* Rework interaction between AnalysisContext and CFG::BuildOptions to keep a ↵Ted Kremenek2011-03-102-65/+61
| | | | | | | | | | | | BuildOptions object around instead of keeping a copy of the flags. Moreover, change AnalysisContext to use an OwningPtr for created analysis objects instead of directly managing them. Finally, add a 'forcedBlkExprs' entry to CFG::BuildOptions that will be used by the CFGBuilder to force specific expressions to be block-level expressions. llvm-svn: 127385
* Revert r127206 "Detect attempts to provide a specialization of a function withinDaniel Dunbar2011-03-091-8/+3
| | | | | | a...", it appears to cause us to reject various valid codes. llvm-svn: 127373
* Silence gcc warnings.Argyrios Kyrtzidis2011-03-091-3/+3
| | | | llvm-svn: 127370
OpenPOWER on IntegriCloud