aboutsummaryrefslogtreecommitdiff
path: root/include
AgeCommit message (Collapse)Author
2009-11-18Code completion after @property, providing the names of forward-declared ↵Douglas Gregor
properties git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89196 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-18Code completion for Objective-C properly listsDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89194 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-18Incremental progress on using declarations. Split UnresolvedUsingDecl intoJohn McCall
two classes, one for typenames and one for values; this seems to have some support from Doug if not necessarily from the extremely-vague-on-this-point standard. Track the location of the 'typename' keyword in a using-typename decl. Make a new lookup result for unresolved values and deal with it in most places. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89184 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-18Add ObjCClassDecl::getSourceRange().Ted Kremenek
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89179 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-18Add SourceLocations to ObjCClassDecl for the class identifiers referenced by ↵Ted Kremenek
@class. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89170 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Rename Objective-C message send completion functions to indicate that we're ↵Douglas Gregor
referring to message sends git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89164 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Pass source locations of identifiers referenced by @class through ↵Ted Kremenek
Action::ActOnForwardClassDeclaration(). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89162 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Added block type introspection support.David Chisnall
As per Fariborz's suggestion, committed now but can be reverted later if the used flag is problematic for Apple. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89134 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Add clang_getNullCursor() and clang_equalCursors() (the latter for comparing ↵Ted Kremenek
cursors). git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89131 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Allow "source_filename" to be an optional argument (the client can provide ↵Ted Kremenek
NULL). This allows the client to put the source_filename in the command_line_args without fear of the file being named twice. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89118 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Fixes a typo, reported by Doug.Fariborz Jahanian
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89107 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Make sure, for sure this time, that expressions do not have reference typeDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89104 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17StringRef'ify CodeCompletionStringDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89102 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Fix MSVC warning.Benjamin Kramer
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89092 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Eliminate TargetInfo::getDefaultLangOptions, this kind of logic is better doneDaniel Dunbar
in the driver. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89073 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Add -fblocks, -stack-protector, and -fobjc-nonfragile-abi defaulting to driver,Daniel Dunbar
instead of using getDefaultLangOptions. - Remove unused -fobjc-tight-layout while at it. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89065 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Add driver::types::isObjC predicate.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89064 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Add EvalEndPath interface to Checker. Now we can check memory leaked at theZhongxing Xu
end of the path. Need to unify interfaces. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89063 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Move -fnext-runtime defaulting to driver (and change clang-cc default toDaniel Dunbar
-fnext-runtime), instead of using getDefaultLangOptions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89058 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Move -fms-extensions defaulting to driver, instead of using ↵Daniel Dunbar
getDefaultLangOptions. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89057 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Silence some warnings produced by Clang, and add a missing headerDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89051 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Add initial cut at CompilerInvocation::toArgs, which "serializes" the ↵Daniel Dunbar
CompilerInvocation into a list of arguments which can be passed to clang-cc (eventually, clang -cc1). - Unfortunately, this is currently a tedious and manual translation. Eventually it would be nice to automatically generate this code. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89049 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Instead of hanging a using declaration's target decls directly off the using John McCall
decl, create shadow declarations and put them in scope like normal. Work in progress. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89048 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Simplify PreprocessorOptions, it doesn't need abstracted field access.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89047 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Add missing #include found by ClangDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89043 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Require the object type of a member access expression ("." or "->") toDouglas Gregor
be complete. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89042 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Reorder options alphabetically.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89041 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Remove unused program action.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89038 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Rename CompilerInvocation::DiagOpts -> DiagnosticOpts for consistency.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89037 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Add missing defaults to AnalyzerOptions.Daniel Dunbar
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89036 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Remove unused IsCXXAware and IgnoreSysRoots option from ↵Daniel Dunbar
HeaderSearchOptions::Entry. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89035 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Unify the way destructor epilogues are generated for synthesized and regular ↵Anders Carlsson
destructors. Also fix PR5529. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89034 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Add a comment.Zhongxing Xu
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89032 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17When querying type qualifiers on QualType via one of the "non-local"Douglas Gregor
interfaces (which are used throughout the front end), combine the qualifiers on the QualType instance with the qualifiers on the canonical type to produce the set of qualifiers that, semantically, apply to that type. This should design away a large category of "qualifier-hidden-behind-a-typedef" buts like we saw in PR5383. Performance-wise, this caused a regression of ~0.5% on Cocoa.h, but it's totally worth it. We may actually be able to get a little more performance back by using CanQualType more often. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89018 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-17Remove extra space in warn_maynot_respond diagnostic. Fixes ↵Ted Kremenek
<rdar://problem/7364274>. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89013 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-16Store more information in HeaderSearchOptions so that its initialization is notDaniel Dunbar
language dependent. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88981 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-16First part of changes to eliminate problems with cv-qualifiers andDouglas Gregor
sugared types. The basic problem is that our qualifier accessors (getQualifiers, getCVRQualifiers, isConstQualified, etc.) only look at the current QualType and not at any qualifiers that come from sugared types, meaning that we won't see these qualifiers through, e.g., typedefs: typedef const int CInt; typedef CInt Self; Self.isConstQualified() currently returns false! Various bugs (e.g., PR5383) have cropped up all over the front end due to such problems. I'm addressing this problem by splitting each qualifier accessor into two versions: - the "local" version only returns qualifiers on this particular QualType instance - the "normal" version that will eventually combine qualifiers from this QualType instance with the qualifiers on the canonical type to produce the full set of qualifiers. This commit adds the local versions and switches a few callers from the "normal" version (e.g., isConstQualified) over to the "local" version (e.g., isLocalConstQualified) when that is the right thing to do, e.g., because we're printing or serializing the qualifiers. Also, switch a bunch of Context.getCanonicalType(T1).getUnqualifiedType() == Context.getCanonicalType(T2).getQualifiedType() expressions over to Context.hasSameUnqualifiedType(T1, T2) git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88969 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-16Fix condition in LocationCheck::classof(). Thanks to Marius Wachtler for ↵Ted Kremenek
pointing this out! git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88949 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-16Handle case of missing '@end' in implementation contextFariborz Jahanian
gracefully, on par with gcc, by: Issuing a warning, doing final sematinc check of its definitions and generating its meta-data. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88934 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-16* Do the same thing to the basicstore as in r84163.Zhongxing Xu
* Add a load type to GRExprEngine::EvalLoad(). * When retrieve from 'theValue' of OSAtomic funcitions, use the type of the region instead of the argument expression as the load type. * Then we can convert CastRetrievedSVal to a pure assertion. In the future we can let all Retrieve() methods simply return SVal. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88888 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-15Make sure that virtual destructors have delete operators.Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88877 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-15Add DeclarationName::dump().Anders Carlsson
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88876 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-15If we find a deallocation function in the class scope, but it is a placement ↵Anders Carlsson
function we should not look for a deallocation function in the global scope. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88851 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-15Make a couple more headers standaloneDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88840 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-15Remove an obviously-broken header, which still tries to refer to ScopedDecl.Douglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88837 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-15Make some more headers standaloneDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88835 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-15Add TargetOptions and use it when constructing targets.Daniel Dunbar
- This ended up being hard to factor, sorry for the large diff. - Some post-commit cleanup to come. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88833 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-15Make a few headers parse standaloneDouglas Gregor
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88832 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-15Add pluggable action support to clang-cc, via -plugin command line option.Daniel Dunbar
- Expects the plugin has been loaded with -load. - Using this may require disabling TOOL_NO_EXPORTS in the clang-cc Makefile, this breaks the llvm::Registry way of working (static constructors are bad, kids). This should be replaced with a "real" plugin model that has explicit plugin interfaces. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88824 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-14Move the program action enum to FrontendOptions.Daniel Dunbar
-- ddunbar@giles:clang-cc (master)$ grep llvm::cl::opt clang-cc.cpp # Woot ddunbar@giles:clang-cc (master)$ -- git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@88820 91177308-0d34-0410-b5e6-96231b3b80d8