summaryrefslogtreecommitdiffstats
path: root/clang/lib/Frontend
Commit message (Collapse)AuthorAgeFilesLines
* Fix more rewriting of protocol-quialified 'id' type.Fariborz Jahanian2010-02-031-0/+2
| | | | | | (Fixes radar 7607413). llvm-svn: 95257
* update for llvm api change.Chris Lattner2010-02-031-2/+1
| | | | llvm-svn: 95203
* clang -cc1: Wire up -emit-obj, for emitting object files.Daniel Dunbar2010-02-033-8/+15
| | | | llvm-svn: 95182
* update for llvm api changes.Chris Lattner2010-02-021-3/+3
| | | | llvm-svn: 95125
* update for llvm api change.Chris Lattner2010-02-021-6/+0
| | | | llvm-svn: 95110
* Fix up rewriting of protocol qualified types in objc rewriter.Fariborz Jahanian2010-02-021-1/+9
| | | | | | Fixes radar 7589414. llvm-svn: 95097
* Driver/Frontend: Add support for -fobjc-legacy-dispatch, not yet used.Daniel Dunbar2010-02-011-0/+3
| | | | llvm-svn: 95004
* Add VarDecl::isThisDeclarationADefinition(), which properly encapsulates the ↵Sebastian Redl2010-01-312-8/+5
| | | | | | logic for when a variable declaration is a (possibly tentativ) definition. Add a few functions building on this, and shift C tentative definition handling over to this new functionality. This shift also kills the Sema::TentativeDefinitions map and instead simply stores all declarations in the renamed list. The correct handling for multiple tentative definitions is instead shifted to the final walk of the list. llvm-svn: 94968
* Use IdentifierInfo * instead of std::string for the AsmStmt names.Anders Carlsson2010-01-303-6/+6
| | | | llvm-svn: 94925
* ASTUnit: Ensure the CompilerInvocation object used in LoadFromCommandLine isDaniel Dunbar2010-01-301-7/+12
| | | | | | | | | live as long as the ASTUnit. This is useful for clients which want to maintain pointers to the LangOptions object which ultimately lives in the CompilerInvocation, although it would be nice to make all of this ownership stuff more explicit and obvious. llvm-svn: 94924
* CompilerInstance: Change to not contain the CompilerInvocation object.Daniel Dunbar2010-01-301-2/+7
| | | | | | | | This allows clients to install their own CompilerInvocation object, which is important for clients that may wish to create references to things like LangOptions whose lifetime will extend past that of the CompilerInstance. llvm-svn: 94923
* Even more AsmStmt cleanup.Anders Carlsson2010-01-301-1/+2
| | | | llvm-svn: 94921
* Combine AsmStmt::setOutputsAndInputs and AsmStmt::setClobbers.Anders Carlsson2010-01-301-3/+4
| | | | llvm-svn: 94918
* PCHReader doesn't implement classof so dyn_casting it will do really weird ↵Benjamin Kramer2010-01-301-1/+1
| | | | | | | | stuff. Use a static_cast instead. I don't know if this hack is the right fix. Doug, please take a look. llvm-svn: 94895
* Fixes rewriter bug rewriting byref related API where a structFariborz Jahanian2010-01-291-2/+1
| | | | | | definition comes after where it is needed. Fixes radar 7589385. llvm-svn: 94788
* Introduce serialization and deserialization of diagnostic informationDouglas Gregor2010-01-282-2/+37
| | | | | | | | | | | | | | | | | so that CIndex can report diagnostics through the normal mechanisms even when executing Clang in a separate process. This applies both when performing code completion and when using ASTs as an intermediary for clang_createTranslationUnitFromSourceFile(). The serialized format is not perfect at the moment, because it does not encapsulate macro-instantiation information. Instead, it maps all source locations back to the instantiation location. However, it does maintain source-range and fix-it information. To get perfect fidelity from the serialized format would require serializing a large chunk of the source manager; at present, it isn't clear if this code will live long enough for that to matter. llvm-svn: 94740
* Fixes a rewrite bug rewriting nested ivars reference.Fariborz Jahanian2010-01-281-4/+8
| | | | | | (Radar 7583971). llvm-svn: 94724
* Remove ModuleProviders from clang after r94686 removed them from LLVM.Jeffrey Yasskin2010-01-271-8/+4
| | | | llvm-svn: 94688
* Move 'LocalCheckers.h' to the 'Checkers' subdirectory.Ted Kremenek2010-01-261-1/+1
| | | | llvm-svn: 94609
* Added assert to the rewrite.Fariborz Jahanian2010-01-261-0/+1
| | | | llvm-svn: 94584
* Refix rewriting of an ivar access when it isFariborz Jahanian2010-01-261-14/+1
| | | | | | type-cast to its sub-class (radar 7575882). llvm-svn: 94559
* Fix a regression caused by my rewriting of cast of ivarFariborz Jahanian2010-01-261-9/+11
| | | | | | access (was radar 7575882). llvm-svn: 94481
* Fixes a rewriting bug of access ivar of a variable castFariborz Jahanian2010-01-251-1/+10
| | | | | | to subclass. (Fixes radar 7575882). llvm-svn: 94444
* Move BugReporter.h, PathDiagnostic.h, and BugType.h to ↵Ted Kremenek2010-01-253-4/+4
| | | | | | 'include/Checker/BugReporter' llvm-svn: 94428
* Update C++ include paths for Exherbo, by Ingmar Vanhassel.Benjamin Kramer2010-01-251-3/+3
| | | | llvm-svn: 94420
* Split libAnalysis into two libraries: libAnalysis and libChecker.Ted Kremenek2010-01-253-9/+10
| | | | | | | | | | | | | | | | | | | | | | | | | (1) libAnalysis is a generic analysis library that can be used by Sema. It defines the CFG, basic dataflow analysis primitives, and inexpensive flow-sensitive analyses (e.g. LiveVariables). (2) libChecker contains the guts of the static analyzer, incuding the path-sensitive analysis engine and domain-specific checks. Now any clients that want to use the frontend to build their own tools don't need to link in the entire static analyzer. This change exposes various obvious cleanups that can be made to the layout of files and headers in libChecker. More changes pending. :) This change also exposed a layering violation between AnalysisContext and MemRegion. BlockInvocationContext shouldn't explicitly know about BlockDataRegions. For now I've removed the BlockDataRegion* from BlockInvocationContext (removing context-sensitivity; although this wasn't used yet). We need to have a better way to extend BlockInvocationContext (and any LocationContext) to add context-sensitivty. llvm-svn: 94406
* ASTUnit: Don't check that input files exist when parsing ASTs from the commandDaniel Dunbar2010-01-251-0/+4
| | | | | | | line -- they may be remapped (fake) files. This is useful for testing parsing entirely from memory. llvm-svn: 94395
* -fno-rtti is now the default.Chris Lattner2010-01-241-1/+0
| | | | llvm-svn: 94379
* Implement instantiation of AsmStmts (Crazy, I know)Anders Carlsson2010-01-241-1/+1
| | | | llvm-svn: 94361
* Extend clang_createTranslationUnitFromSourceFile() to support creatingDouglas Gregor2010-01-232-12/+61
| | | | | | translation units that include unsaved files. llvm-svn: 94258
* (1) Rename getClangSubversionRevision() to getClangRevision(), andTed Kremenek2010-01-222-16/+8
| | | | | | | | | | | | | | | | | have it return a StringRef instead of an integer (to be more VCS agnostic). (2) Add getClangFullRepositoryVersion(), which contains an amalgamation of the repository name and the revision. (3) Change PCH to only emit the string returned by getClangFullRepositoryVersion() instead of also emitting the value of getClangSubversionRevision() (which has been removed). This is functionally equivalent. More cleanup to version string generation pending... llvm-svn: 94231
* Rename pch::SVN_BRANCH_REVISION to pch::VERSION_CONTROL_BRANCH_REVISION.Ted Kremenek2010-01-222-4/+4
| | | | llvm-svn: 94214
* Rename getClangSubversionPath() -> getClangRepositoryPath() and have it ↵Ted Kremenek2010-01-222-4/+4
| | | | | | return a StringRef. llvm-svn: 94213
* Patch to implement rewriting of properties.Fariborz Jahanian2010-01-213-3/+9
| | | | | | Fixes radar 7562952. llvm-svn: 94087
* Make some helper functions static.Benjamin Kramer2010-01-201-5/+5
| | | | llvm-svn: 94004
* Don't store a Twine temporary, it's unsafe.Benjamin Kramer2010-01-201-4/+6
| | | | llvm-svn: 94003
* Move the MacroBuilder utilitiy to its own header. Update references.Chandler Carruth2010-01-201-0/+1
| | | | | | Comments and/or improvements to the documentation are welcome. llvm-svn: 93982
* Fix an invalid Twine use spotty by abbeyj, it isn't safe to use TwineDaniel Dunbar2010-01-201-1/+4
| | | | | | | temporaries (this is one reason I'm nervous about propagating their use beyond particularly performance critical places). llvm-svn: 93981
* Add a missing case for DeclContext printer.Zhongxing Xu2010-01-201-0/+5
| | | | llvm-svn: 93973
* Also handle CXXConstructor, CXXDestructor and CXXConversion in CFGMike Stump2010-01-201-2/+4
| | | | | | printing. llvm-svn: 93968
* Use the llvm coding convention for indentation for switch.Mike Stump2010-01-209-148/+148
| | | | llvm-svn: 93966
* add support for Fedora 10 x86_64, there really should be a better way to ↵Chris Lattner2010-01-191-0/+4
| | | | | | | | handle this. patch by Dmitry llvm-svn: 93948
* The type of a compound literal expression is not necessarily the same as theJohn McCall2010-01-191-4/+4
| | | | | | type which was syntactically written. Fixes PR 6080. llvm-svn: 93933
* Rewriteing of gnu extension __typeof in objective-c rewriter.Fariborz Jahanian2010-01-191-1/+13
| | | | | | Fixes radar 6358225. llvm-svn: 93917
* Avoid an instantiation of std::sort.Benjamin Kramer2010-01-191-14/+10
| | | | llvm-svn: 93882
* Preserve type source information in compound literal expressions.John McCall2010-01-183-3/+10
| | | | | | Patch by Enea Zaffanella! llvm-svn: 93752
* Print fix-it hints properly around tabs, from Christian Adåker!Douglas Gregor2010-01-181-0/+36
| | | | llvm-svn: 93750
* Improve source-location information for builtin TypeLocs, from EneaDouglas Gregor2010-01-182-2/+14
| | | | | | Zaffanella (with a couple of my tweaks). llvm-svn: 93733
* Encoding calling conventions in the type system, from Charles Davis!Douglas Gregor2010-01-182-4/+8
| | | | llvm-svn: 93726
* PR6055: fix FreeBSD c++ include path. patch by Roman DivackyNuno Lopes2010-01-171-1/+1
| | | | llvm-svn: 93668
OpenPOWER on IntegriCloud