summaryrefslogtreecommitdiffstats
path: root/clang
Commit message (Collapse)AuthorAgeFilesLines
* Implement AST importing and checking for Objective-C method declarations.Douglas Gregor2010-02-176-10/+210
| | | | llvm-svn: 96442
* Correctly calculate base offsets for 'this' pointer adjustments involving ↵Anders Carlsson2010-02-171-3/+40
| | | | | | virtual bases. This can't be tested yet due to lack of vcall offsets :) llvm-svn: 96441
* Convert clang_getCompletionChunkText() to return a CXString.Ted Kremenek2010-02-173-9/+15
| | | | llvm-svn: 96439
* Revert r95939, as suggested by Alexandre Julliard from the Wine project (andCharles Davis2010-02-174-12/+6
| | | | | | our own Chris Lattner). llvm-svn: 96431
* Remove trailing spaces.Ted Kremenek2010-02-171-212/+212
| | | | llvm-svn: 96427
* Change clang_getCursorKindSpelling() to return a CXStringTed Kremenek2010-02-173-158/+202
| | | | | | instead of a 'const char *'. llvm-svn: 96425
* Change clang_getFileName() to return a 'CXString' instead of 'const char *'.Ted Kremenek2010-02-173-13/+31
| | | | llvm-svn: 96424
* Move createCXString() functions out of CIndexer and into the clang::cxstring ↵Ted Kremenek2010-02-174-98/+101
| | | | | | | | | | | | namespace. We can much more succinctly refer to these functions this way. Also change the default behavior of createCXString(StringRef&) to duplicate the string. This is almost always what we want. The other case is where we pass a constant c-string, which uses the other version of createCXString(). llvm-svn: 96423
* Implement AST importing of Objective-C instance variables. Douglas Gregor2010-02-175-10/+127
| | | | | | Check superclasses when merging two Objective-C @interfaces. llvm-svn: 96420
* More rewriter test converted to compile with clang.Fariborz Jahanian2010-02-162-8/+2
| | | | llvm-svn: 96406
* With addition of -Wno-address-of-temporary (thank you Doug) we can nowFariborz Jahanian2010-02-161-4/+3
| | | | | | | have rewriter test cases which pass the .cpp file through clang and also test c++ aspect of clang. llvm-svn: 96405
* IRgen optimization: cache the value of 'this' and 'vtt' instead ofJohn McCall2010-02-164-25/+19
| | | | | | | | repeatedly reloading from an alloca. We still need to create the alloca for debug info purposes (although we currently create it in all cases because of some abstraction boundaries that're hard to break down). llvm-svn: 96403
* Distinguish two lexical blocks at the same level.Devang Patel2010-02-162-1/+22
| | | | llvm-svn: 96397
* Introduce a new kind of failed result for isLvalue/isModifiableLvalueDouglas Gregor2010-02-166-6/+62
| | | | | | | | which describes temporary objects of class type in C++. Use this to provide a more-specific, remappable diagnostic when takin the address of such a temporary. llvm-svn: 96396
* IRgen: Switch 'retval' to use CreateIRTemp.Daniel Dunbar2010-02-162-8/+17
| | | | llvm-svn: 96376
* Disable warn_unused_function for now, its breaking various project builds due toDaniel Dunbar2010-02-162-3/+6
| | | | | | false positives. llvm-svn: 96375
* IRgen: Add CreateIRTemp, which creates a temporary alloca but with type ↵Daniel Dunbar2010-02-162-1/+18
| | | | | | converted "not-for-memory". Dunno a better name. llvm-svn: 96374
* IRgen: Switch EmitCompoundLiteralLValue to use CreateMemTemp.Daniel Dunbar2010-02-162-7/+12
| | | | llvm-svn: 96373
* Do not try to instantiate invalid declarations. It's a recipe forDouglas Gregor2010-02-163-4/+17
| | | | | | disaster. Fixes PR6161. llvm-svn: 96371
* Improve parsing and instantiation of destructor names, so that we canDouglas Gregor2010-02-1615-113/+394
| | | | | | | | | | | | | | | | | | | | | | | now cope with the destruction of types named as dependent templates, e.g., y->template Y<T>::~Y() Nominally, we implement C++0x [basic.lookup.qual]p6. However, we don't follow the letter of the standard here because that would fail to parse template<typename T, typename U> X0<T, U>::~X0() { } properly. The problem is captured in core issue 339, which gives some (but not enough!) guidance. I expect to revisit this code when the resolution of 339 is clear, and/or we start capturing better source information for DeclarationNames. Fixes PR6152. llvm-svn: 96367
* when a diagnostic is an extension and has no other -W flag, Chris Lattner2010-02-161-1/+4
| | | | | | | | | | | | indicate that it was enabled with -pedantic so people know why they're getting them: $ printf "int x;" | clang -xc - -pedantic <stdin>:1:7: warning: no newline at end of file [-pedantic] int x; ^ llvm-svn: 96365
* dllimport and dllexport are declspec attributes, too. They're alsoCharles Davis2010-02-165-85/+123
| | | | | | | | Win32-specific. Also, fix a test to use FileCheck instead of grepping LLVM IR. llvm-svn: 96364
* add two aliases for SSE functions we already have, fixing PR6316.Chris Lattner2010-02-161-0/+12
| | | | llvm-svn: 96363
* add freebsd/ppc[64] support, patch by Nathan Whitehorn, PR6318Chris Lattner2010-02-161-1/+10
| | | | llvm-svn: 96362
* Minor rewriter cleanup and a test for a block rewriting bug.Fariborz Jahanian2010-02-162-1/+15
| | | | llvm-svn: 96361
* Add test case showing that a recursive block that captures a block pointer thatTed Kremenek2010-02-161-0/+5
| | | | | | isn't marked '__block' is bad. llvm-svn: 96357
* Add an extreme vbase offsets test. I'm kinda amazed that this works myself ;)Anders Carlsson2010-02-161-0/+210
| | | | llvm-svn: 96356
* Handle layout of vtables for virtual bases.Anders Carlsson2010-02-162-1/+68
| | | | llvm-svn: 96355
* Move some code around in preparation for virtual base vtables.Anders Carlsson2010-02-161-9/+18
| | | | llvm-svn: 96354
* Fix rewriter bug when function call inside block with block parameter Fariborz Jahanian2010-02-161-4/+41
| | | | | | causes C++ compile error (radar 7651312). llvm-svn: 96352
* Fix a bug where we would not emit secondary vtables for bases of a primary base.Anders Carlsson2010-02-162-12/+59
| | | | llvm-svn: 96351
* Rename argument so the name reflects what it's doing.Benjamin Kramer2010-02-162-9/+10
| | | | llvm-svn: 96342
* Add simpler checker to check if variables captured by a block are uninitialized.Ted Kremenek2010-02-167-3/+144
| | | | llvm-svn: 96341
* Support local namespace aliases and permit them to be instantiated.John McCall2010-02-164-1/+48
| | | | llvm-svn: 96335
* Emit vbase offsets.Anders Carlsson2010-02-162-4/+63
| | | | llvm-svn: 96329
* More work on the new layout code.Anders Carlsson2010-02-161-11/+66
| | | | llvm-svn: 96328
* When emitting complete destructors for classes with virtual bases, computeJohn McCall2010-02-162-36/+64
| | | | | | | | | | | | the offset to the virtual bases statically inside of relying on the virtual base offsets in the object's vtable(s). This is both more efficient and sound against the destructor's manipulation of the vtables. Also extract a few helper routines. Oh and we seem to pass all tests with an optimized clang now. llvm-svn: 96327
* White-list comma expressions with the literal 0 as their RHS againstJohn McCall2010-02-161-1/+9
| | | | | | unused-value warnings. This is a common macro idiom. llvm-svn: 96326
* Make the various type-decl Types (and their associated ASTContext routines)John McCall2010-02-164-21/+25
| | | | | | accept const decls. llvm-svn: 96325
* Re-applying 96173. Looks like finally I got the test case right.Sanjiv Gupta2010-02-162-9/+14
| | | | llvm-svn: 96321
* Add test case to show that Clang now checks the format stringTed Kremenek2010-02-161-1/+4
| | | | | | arguments of asprintf (<rdar://problem/6657191>). llvm-svn: 96319
* c-index-test: Pass appropriate client data.Daniel Dunbar2010-02-161-1/+1
| | | | llvm-svn: 96317
* ASTUnit: Constant fold UseBumpAllocator to true, we don't care to support ↵Daniel Dunbar2010-02-164-12/+5
| | | | | | this as an argument. llvm-svn: 96316
* ASTUnit::LoadFromCompilerInvocation - Take ownership of the provided invocation.Daniel Dunbar2010-02-162-10/+6
| | | | llvm-svn: 96315
* CompilerInstance: Move LLVMContext member out of constructor.Daniel Dunbar2010-02-163-18/+16
| | | | llvm-svn: 96314
* Switch clang to use its own LLVMContext (not the global one).Daniel Dunbar2010-02-161-1/+1
| | | | llvm-svn: 96313
* Fix test case.Ted Kremenek2010-02-161-1/+1
| | | | llvm-svn: 96311
* Refactor the logic for printf argument type-checking into ↵Ted Kremenek2010-02-165-179/+263
| | | | | | | | | | analyze_printf::ArgTypeResult. Implement printf argument type checking for '%s'. Fixes <rdar://problem/3065808>. llvm-svn: 96310
* Added 'AsWideChar' flag to LengthModifier.Ted Kremenek2010-02-161-1/+2
| | | | llvm-svn: 96309
* Skeleton for importing Objective-C classesDouglas Gregor2010-02-164-1/+117
| | | | llvm-svn: 96306
OpenPOWER on IntegriCloud