summaryrefslogtreecommitdiffstats
path: root/clang/lib
Commit message (Collapse)AuthorAgeFilesLines
* Removed a FIXME comment.Fariborz Jahanian2009-12-231-3/+2
| | | | llvm-svn: 92028
* More rewriting of __block variables.Fariborz Jahanian2009-12-231-4/+18
| | | | llvm-svn: 92027
* fix the microsoft "charify" extension to return the charified token Chris Lattner2009-12-231-1/+1
| | | | | | | as a character literal, not a string literal. This might fix rdar://7486575 llvm-svn: 92025
* switch -Werror/-Wfatal-errors error conditions to use diagnostics insteadChris Lattner2009-12-231-9/+7
| | | | | | of printf, patch by Christian Adaker! llvm-svn: 92019
* Fix the overflow calculation in Sema::CheckTemplateArgument to be a bit moreEli Friedman2009-12-231-1/+8
| | | | | | accurate. llvm-svn: 92018
* When using a default function argument for a function template (orDouglas Gregor2009-12-232-3/+31
| | | | | | | | | | | | | | | | | member function thereof), perform the template instantiation each time the default argument is needed. This ensures that (1) We get different CXXTemporary objects for each instantiation, and (2) Any other instantiations or definitions triggered by the instantiation of the default argument expression are guaranteed to happen; previously, they might have been suppressed, e.g., because they happened in an unevaluated context. This fixes the majority of PR5810. However, it does not address the problem where we may have multiple uses of the same CXXTemporary within an expression when the temporary came from a non-instantiated default argument expression. llvm-svn: 92015
* Remove RewriteBlocks. It has been superseded by RewriteObjCKovarththanan Rajaratnam2009-12-234-1161/+0
| | | | llvm-svn: 92014
* move a few more symbols to .rodata/.data.rel.roNuno Lopes2009-12-235-5/+5
| | | | llvm-svn: 92012
* Fix DISABLE_SMART_POINTERS buildDouglas Gregor2009-12-231-5/+6
| | | | llvm-svn: 92008
* Add support for handling initializers in RewriteObjC::RewriteByRefVar().Steve Naroff2009-12-231-5/+16
| | | | | | As the FIXME indicates, RewriteByRefVar() won't work for multiple declarators (in general). I've discussed this with Fariborz and he is aware of the limitation. llvm-svn: 92007
* Register call inliner as the last checker.Zhongxing Xu2009-12-231-2/+3
| | | | llvm-svn: 91992
* Migrate the call inliner to the Checker interface.Zhongxing Xu2009-12-232-34/+70
| | | | llvm-svn: 91991
* Add 'DeclStmt::DoDestroy()' which doesn't actually recurse over its child ↵Ted Kremenek2009-12-232-0/+9
| | | | | | expressions (via StmtIterator), as those expressions are owned by the Decls and Types (which are destroyed elsewhere). This fixes a crasher reported in <rdar://problem/7487294>. llvm-svn: 91990
* For inter-procedural analysis, predecessor node may be in another function.Zhongxing Xu2009-12-231-3/+3
| | | | | | So we should use the current program point. llvm-svn: 91989
* Add CFG support for the condition variable that can appear in IfStmts in C++ ↵Ted Kremenek2009-12-232-1/+50
| | | | | | | | mode. Add transfer function support in GRExprEngine for IfStmts with initialized condition variables. llvm-svn: 91987
* Suppress dead store warnings involving objects initialized with ↵Ted Kremenek2009-12-231-0/+4
| | | | | | CXXExprTemporaries. llvm-svn: 91986
* Add stack trace pretty printing in GRExprEngine::VisitLValue().Ted Kremenek2009-12-231-0/+4
| | | | llvm-svn: 91985
* Fix CXXConstructExpr::getSourceRange() to not include the source ranges of ↵Ted Kremenek2009-12-231-0/+12
| | | | | | CXXDefaultArgExprs when computing its range (since these expressions have no source range, and using them will make the encompassing range invalid). llvm-svn: 91984
* Update for the intrinsic changes in llvm: the object size intrinsicEric Christopher2009-12-233-2/+13
| | | | | | | only takes a boolean second argument now. Update tests accordingly. Currently the builtin still accepts the full range for compatibility. llvm-svn: 91983
* Teach GRExprEngine::VisitLValue to ignore CXXExprWithTempories (for now).Ted Kremenek2009-12-231-0/+1
| | | | llvm-svn: 91982
* Fix PR 5857. When casting from a symbolic region to an integer back to a ↵Ted Kremenek2009-12-231-8/+9
| | | | | | pointer value, we were not correctly layering the correct ElementRegion on the original SymbolicRegion. llvm-svn: 91981
* Remove CharUnits::toString() to eliminate dependence on <string>.Ken Dyck2009-12-232-21/+0
| | | | llvm-svn: 91978
* Patch to do more rewrite of __block variables.Fariborz Jahanian2009-12-231-11/+87
| | | | | | Still WIP. llvm-svn: 91977
* Eliminate a completely unnecessary buffer copy when parsing float literals.John McCall2009-12-231-6/+1
| | | | llvm-svn: 91974
* Teach GRExprEngine::VisitLValue that we don't handle CXXZeroInitValueExprs yet.Ted Kremenek2009-12-231-1/+2
| | | | llvm-svn: 91970
* Also treat the type of the subexpression as a pointer in ↵Ted Kremenek2009-12-231-0/+1
| | | | | | GRExprEngine::VisitCast when the expression is handled as an lvalue. llvm-svn: 91969
* Driver: Fix '... -O4 -O0 ...', which was generating bitcode.Daniel Dunbar2009-12-231-2/+5
| | | | llvm-svn: 91962
* Driver: Drop ToolChain::getHost()Daniel Dunbar2009-12-231-1/+1
| | | | llvm-svn: 91960
* Set a member's access specifier even if it doesn't match the previous specifier.John McCall2009-12-231-0/+2
| | | | | | | | Prevents an assert on successive redeclarations. Fixed PR5573. llvm-svn: 91956
* Add basic support for analyzing CastExprs as lvalues.Ted Kremenek2009-12-231-3/+27
| | | | llvm-svn: 91952
* Objective-C methods can be variadic, too. Who knew.Douglas Gregor2009-12-231-0/+7
| | | | llvm-svn: 91951
* Switch Sema::CreateOverloadedUnaryOp over to InitializationSequence.Douglas Gregor2009-12-231-3/+8
| | | | llvm-svn: 91948
* warn when attribute warn_unused_result is applied to void functions.Nuno Lopes2009-12-221-1/+6
| | | | | | while at it, remove an outdated FIXME llvm-svn: 91946
* Allow the first parameter of operator new to be a cv-qualifiedDouglas Gregor2009-12-223-3/+4
| | | | | | | | size_t. Also, fix an issue with initialization of parameters in calls, where we weren't removing the cv-qualifiers on the parameter type itself. Fixes PR5823. llvm-svn: 91941
* Driver: When linking, don't warn about unused arguments which are obviously onlyDaniel Dunbar2009-12-221-0/+5
| | | | | | | | used during compilation. - There is no easy way to define this group properly, unfortunately, and maybe this is a losing strategy. For now this is unambiguous more friendly, though. llvm-svn: 91940
* implement -W[no-]fatal-errors, patch by Christian Adåker!Chris Lattner2009-12-222-2/+38
| | | | llvm-svn: 91938
* Make sure that reinterpret_cast gets a CastKind on all successfulDouglas Gregor2009-12-221-1/+5
| | | | | | | paths. Fixes "cannot compile this unexpected cast lvalue yet" error in llvm/lib/Analysis/IPA/GlobalsModRef.cpp. llvm-svn: 91932
* Add using shadow decls to the "instantiated locals" map, fixing PR5847.John McCall2009-12-221-0/+5
| | | | llvm-svn: 91928
* Switch Sema::AddCXXDirectInitializerToDecl over to InitializationSequenceDouglas Gregor2009-12-223-36/+41
| | | | llvm-svn: 91927
* Add transfer functions support for visiting an Objective-C message ↵Ted Kremenek2009-12-222-42/+78
| | | | | | expression as an lvalue when the return type is a C++ reference. llvm-svn: 91926
* ARM: Remove a FIXME, it's not actually more complicated than that.Daniel Dunbar2009-12-221-1/+0
| | | | llvm-svn: 91924
* Switch parameter passing for overloaded binary operators toDouglas Gregor2009-12-221-7/+31
| | | | | | | InitializationSequence. Fixes the -fsyntax-only failure in llvm/lib/Transforms/Scalar/InstructionCombining.cpp. llvm-svn: 91921
* Serialize the NoReturn bit on FunctionTypes for precompiled headersDouglas Gregor2009-12-222-4/+6
| | | | llvm-svn: 91911
* Enter the scope of an initializer for direct-initialization as well asDouglas Gregor2009-12-221-0/+16
| | | | | | for copy-initialization. llvm-svn: 91909
* When transforming a C++ "new" expression that was not explicitly givenDouglas Gregor2009-12-221-0/+25
| | | | | | | a size, check whether the transformed type is itself an array type. If so, take the major array bound as the size to allocate. Fixes PR5833. llvm-svn: 91907
* Switch parameter-passing for calls via function pointers (where weDouglas Gregor2009-12-223-18/+30
| | | | | | don't have a FunctionDecl) over to InitializationSequence. llvm-svn: 91906
* Switch InitializedEntity from TypeLoc down to just QualTypes, since we don't ↵Douglas Gregor2009-12-225-150/+60
| | | | | | use the location information but we did spend a bunch of time building faked-up TypeLocs llvm-svn: 91905
* Move the implementation of ASTContext::getTypeSizeInChars() to the .cpp file toKen Dyck2009-12-222-0/+11
| | | | | | avoid #including CharUnits.h in ASTContext.h. llvm-svn: 91903
* Switch initialization of parameters in a call over toDouglas Gregor2009-12-222-6/+33
| | | | | | | | | | | InitializationSequence (when a FunctionDecl is present). This required a few small fixes to initialization sequences: - Make sure to use the adjusted parameter type for initialization of function parameters. - Implement transparent union calling semantics in C llvm-svn: 91902
* Make sure that we mangle overloaded operators that are member functions ↵Anders Carlsson2009-12-221-7/+22
| | | | | | | | correctly, giving them the correct arity. With this seemingly insignificant fix, we are now able to build and link clang using clang itself! (LLVM still has to be built with gcc for the time being). llvm-svn: 91893
OpenPOWER on IntegriCloud