summaryrefslogtreecommitdiffstats
path: root/clang/lib
Commit message (Collapse)AuthorAgeFilesLines
...
* Improve on my previous fix for debug information. Rather thanDouglas Gregor2009-12-211-51/+42
| | | | | | | | | recursing in CGDebugInfo::CreateTypeNode, teach CanonicalizeTypeForDebugInfo---now called UnwrapTypeForDebugInfo---to keep unwrapping the type until we hit something that can be represented by debug information. Thanks to Anders for pointing this out! llvm-svn: 91840
* Teach debug info generation to handle TemplateSpecializationType,Douglas Gregor2009-12-211-3/+50
| | | | | | | | ElaboratedType, QualifiedNameType, and SubstTemplateTypeParmType type nodes. Also, produce an "unsupported" diagnostic for C++0x type nodes and "typeof" nodes, rather than asserting nondescriptly. llvm-svn: 91837
* Add ToolChain::getDriver() and use it instead of going through the HostInfoDaniel Dunbar2009-12-213-45/+48
| | | | | | object. llvm-svn: 91830
* Allow comparison of 'void *' with function pointer Fariborz Jahanian2009-12-211-1/+12
| | | | | | as a g++ extension (fixes radar 7481987). llvm-svn: 91827
* Reorganize the base-lookup bits of ActOnMemInitializer in order to betterJohn McCall2009-12-211-8/+24
| | | | | | support diagnostics and error recovery. llvm-svn: 91825
* Add comments.Zhongxing Xu2009-12-211-0/+1
| | | | llvm-svn: 91818
* Fix for PR5840: fix the kind of name lookup used for classes inEli Friedman2009-12-211-2/+6
| | | | | | | | | | Sema::getTypeName. "LookupNestedNameSpecifierName" isn't quite the right kind of lookup, though; it doesn't ignore namespaces. Someone more familiar with the lookup code should fix this properly. llvm-svn: 91809
* Small comment fix.Eli Friedman2009-12-211-1/+1
| | | | llvm-svn: 91808
* indentation fixChris Lattner2009-12-211-1/+1
| | | | llvm-svn: 91807
* Incomplete structs should also have internal linkage.Anders Carlsson2009-12-211-9/+76
| | | | llvm-svn: 91805
* Correcly handle pointers to member pointer types where the class or the ↵Anders Carlsson2009-12-201-42/+48
| | | | | | pointee is incomplete. llvm-svn: 91804
* fix PR4010: add support for the warn_unused_result for function pointersNuno Lopes2009-12-203-8/+11
| | | | llvm-svn: 91803
* fix PR5500: clang fails to parse inline asm with :: in C++ mode Chris Lattner2009-12-201-7/+22
| | | | llvm-svn: 91802
* refactor asm stmt parsing to avoid nesting as much, andChris Lattner2009-12-201-39/+38
| | | | | | pull ':' eating out of ParseAsmOperandsOpt. llvm-svn: 91801
* Rework the way pointer types are handled by the RTTI builder. We now get the ↵Anders Carlsson2009-12-201-101/+354
| | | | | | right linkage for indirect pointers to incomplete structs. llvm-svn: 91799
* Make sure we instantiate the destructor for variables initialized byEli Friedman2009-12-201-0/+9
| | | | | | assignment. llvm-svn: 91798
* Fix review comment; no visible change.Eli Friedman2009-12-201-28/+29
| | | | llvm-svn: 91797
* Switch default-initialization of variables of class type (or array thereof) ↵Douglas Gregor2009-12-202-21/+13
| | | | | | over to InitializationSequence. I could swear that this fixes a PR somewhere, but I couldn't figure out which one llvm-svn: 91796
* Revert accidental commitDouglas Gregor2009-12-201-11/+20
| | | | llvm-svn: 91795
* Fix CMake build on windows, from Cedric VenetDouglas Gregor2009-12-201-20/+11
| | | | llvm-svn: 91794
* Don't inject the class name until that magical lbrace.John McCall2009-12-203-24/+37
| | | | | | | | | | | | | | | | Because of the rules of base-class lookup* and the restrictions on typedefs, it was actually impossible for this to cause any problems more serious than the spurious acceptance of template <class T> class A : B<A> { ... }; instead of template <class T> class A : B<A<T> > { ... }; but I'm sure we can all agree that that is a very important restriction which is well worth making another Parser->Sema call for. (*) n.b. clang++ does not implement these rules correctly; we are not ignoring non-type names llvm-svn: 91792
* Parse base specifiers within the scope of the class. This is possibly notJohn McCall2009-12-191-12/+18
| | | | | | quite right; I'll come back to it later. It does fix PR 5741. llvm-svn: 91789
* Remove ';' after method definition. Noticed by clang++, which one would thinkDaniel Dunbar2009-12-194-19/+19
| | | | | | | would have a higher respect for its own code. This is getting old, is this warning really adding value? llvm-svn: 91779
* Kill off PreDeclaratorDC.John McCall2009-12-192-6/+2
| | | | llvm-svn: 91772
* Refactor to remove more dependencies on PreDeclaratorDC. I seem to have madeJohn McCall2009-12-195-72/+76
| | | | | | | the redeclaration problems in the [temp.explicit]p3 testcase worse, but I can live with that; they'll need to be fixed more holistically anyhow. llvm-svn: 91771
* Don't use EnterDeclaratorContext when rebuilding a type in the currentJohn McCall2009-12-191-2/+5
| | | | | | instantiation, since we're not using a Scope object for that anyway. llvm-svn: 91770
* Just push a new scope when parsing an out-of-line variable definition.John McCall2009-12-192-35/+49
| | | | | | | Magically fixes all the terrible lookup problems associated with not pushing a new scope. Resolves an ancient xfail and an LLVM misparse. llvm-svn: 91769
* Initialization improvements: addition of string initialization and a fewEli Friedman2009-12-193-30/+55
| | | | | | | | small bug fixes in SemaInit, switch over SemaDecl to use it more often, and change a bunch of diagnostics which are different with the new initialization code. llvm-svn: 91767
* A CXXExprWithTemporaries expression is an lvalue if its subexpressionDouglas Gregor2009-12-191-0/+10
| | | | | | is an lvalue. Fixes PR5787. llvm-svn: 91765
* ARM: Use front-end specific target features "soft-float" and ↵Daniel Dunbar2009-12-192-5/+55
| | | | | | "soft-float-abi" to communicate FP mode to target; __SOFTFP__ is set correctly now. llvm-svn: 91755
* Targets: Allow CreateTargetInfo to mutate the target features.Daniel Dunbar2009-12-191-7/+6
| | | | | | | - In particular, it can claim features for itself instead of always passing them on to LLVM. - This allows using the target features as a generic mechanism for passing target specific options to the TargetInfo instance, which may need them for initializing preprocessor defines, etc. llvm-svn: 91753
* Use the FunctionDecl's result type to know exactly if it returns a reference.Zhongxing Xu2009-12-191-0/+10
| | | | llvm-svn: 91751
* Switch more of Sema::CheckInitializerTypes over toDouglas Gregor2009-12-192-81/+48
| | | | | | | | | | InitializationSequence. Specially, switch initialization of a C++ class type (either copy- or direct-initialization). Also, make sure that we create an elidable copy-construction when performing copy initialization of a C++ class variable. Fixes PR5826. llvm-svn: 91750
* Unresolved implicit member accesses are dependent if the object type is ↵John McCall2009-12-191-0/+1
| | | | | | | | | | dependent. Avoids an assertion arising during object-argument initialization in overload resolution. In theory we can resolve this at definition time if the class hierarchy for the member is fully known. llvm-svn: 91747
* Add f80 entry for windows targetsAnton Korobeynikov2009-12-191-2/+2
| | | | llvm-svn: 91746
* Use proper alignment for i16/i32 on msp430. This fixes PR5815.Anton Korobeynikov2009-12-191-1/+1
| | | | llvm-svn: 91739
* eliminate a call to NextToken() when parsing ::fooChris Lattner2009-12-191-5/+6
| | | | llvm-svn: 91738
* <string> already comes in from CharUnits.hChris Lattner2009-12-191-4/+0
| | | | llvm-svn: 91737
* Teach TryAnnotateTypeOrScopeToken to deal with already-annotatedJohn McCall2009-12-192-8/+19
| | | | | | | scope specifiers. Fix a tentative parsing bug that came up in LLVM. Incidentally fixes some random FIXMEs in an existing testcase. llvm-svn: 91734
* Fix for PR5524: make reference binding in default argument work correctly.Eli Friedman2009-12-191-1/+4
| | | | llvm-svn: 91733
* Work in progress for setting the vtable pointers for all bases correctly inEli Friedman2009-12-183-13/+63
| | | | | | | the constructor. This doesn't handle cases requiring the VTT at the moment, and generates unnecessary stores, but I think it's essentially correct. llvm-svn: 91731
* Cleanup switch so it doesn't have a default case.Eli Friedman2009-12-181-1/+7
| | | | llvm-svn: 91725
* Fix for PR5830: fix the computation of the offset to a virtual base.Eli Friedman2009-12-181-3/+36
| | | | llvm-svn: 91724
* Add and tidy doxygen comments and move implementation of toString() to newlyKen Dyck2009-12-182-0/+25
| | | | | | created CharUnits.cpp. llvm-svn: 91719
* Fix a few MSVC warnings.Daniel Dunbar2009-12-182-7/+5
| | | | llvm-svn: 91714
* Enhance GRExprEngine::VisitCallExpr() to be used in an lvalue context. ↵Ted Kremenek2009-12-181-5/+52
| | | | | | Uncovered a new failing test case along the way, but we're making progress on handling C++ references in the analyzer. llvm-svn: 91710
* ARM: Define __thumb2__ for V6T2 targets and only defineDaniel Dunbar2009-12-181-5/+4
| | | | | | __USING_SJLJ_EXCEPTIONS__ on Darwin. llvm-svn: 91705
* Extend code-completion results with the type of each resultDouglas Gregor2009-12-182-1/+52
| | | | llvm-svn: 91702
* ARM: Fix predefines (__ARM_ARCH_..., __REGISTER_PREFIX).Daniel Dunbar2009-12-181-54/+59
| | | | | | | - This should be done leveraging the backend, but I'm a little refactored out. I'll fix it one day, I promise. llvm-svn: 91700
* When diagnosing that a decl ref expr is not a value, note the declarationJohn McCall2009-12-181-1/+1
| | | | | | with "declared at" rather than "previous declaration is here". llvm-svn: 91699
OpenPOWER on IntegriCloud