svn commit: r203955 - in vendor/clang/dist: bindings
bindings/python bindings/python/clang
bindings/python/examples bindings/python/examples/cindex
bindings/python/tests bindings/python/tests/cinde...
Roman Divacky
rdivacky at FreeBSD.org
Tue Feb 16 09:31:37 UTC 2010
Author: rdivacky
Date: Tue Feb 16 09:31:36 2010
New Revision: 203955
URL: http://svn.freebsd.org/changeset/base/203955
Log:
Update clang to r96341.
Added:
vendor/clang/dist/bindings/
vendor/clang/dist/bindings/python/
vendor/clang/dist/bindings/python/README.txt
vendor/clang/dist/bindings/python/clang/
vendor/clang/dist/bindings/python/clang/__init__.py
vendor/clang/dist/bindings/python/clang/cindex.py
vendor/clang/dist/bindings/python/examples/
vendor/clang/dist/bindings/python/examples/cindex/
vendor/clang/dist/bindings/python/examples/cindex/cindex-dump.py
vendor/clang/dist/bindings/python/examples/cindex/cindex-includes.py
vendor/clang/dist/bindings/python/tests/
vendor/clang/dist/bindings/python/tests/__init__.py
vendor/clang/dist/bindings/python/tests/cindex/
vendor/clang/dist/bindings/python/tests/cindex/INPUTS/
vendor/clang/dist/bindings/python/tests/cindex/INPUTS/header1.h
vendor/clang/dist/bindings/python/tests/cindex/INPUTS/header2.h
vendor/clang/dist/bindings/python/tests/cindex/INPUTS/header3.h
vendor/clang/dist/bindings/python/tests/cindex/INPUTS/hello.cpp
vendor/clang/dist/bindings/python/tests/cindex/INPUTS/include.cpp
vendor/clang/dist/bindings/python/tests/cindex/INPUTS/parse_arguments.c
vendor/clang/dist/bindings/python/tests/cindex/__init__.py
vendor/clang/dist/bindings/python/tests/cindex/test_cursor.py
vendor/clang/dist/bindings/python/tests/cindex/test_cursor_kind.py
vendor/clang/dist/bindings/python/tests/cindex/test_diagnostics.py
vendor/clang/dist/bindings/python/tests/cindex/test_index.py
vendor/clang/dist/bindings/python/tests/cindex/test_translation_unit.py
vendor/clang/dist/include/clang/AST/ASTImporter.h
vendor/clang/dist/include/clang/Analysis/Analyses/PrintfFormatString.h
vendor/clang/dist/include/clang/Analysis/AnalysisContext.h
vendor/clang/dist/include/clang/Basic/Linkage.h
vendor/clang/dist/include/clang/Checker/
vendor/clang/dist/include/clang/Checker/BugReporter/
vendor/clang/dist/include/clang/Checker/BugReporter/BugReporter.h
vendor/clang/dist/include/clang/Checker/BugReporter/BugType.h
vendor/clang/dist/include/clang/Checker/BugReporter/PathDiagnostic.h
vendor/clang/dist/include/clang/Checker/Checkers/
vendor/clang/dist/include/clang/Checker/Checkers/DereferenceChecker.h
vendor/clang/dist/include/clang/Checker/Checkers/LocalCheckers.h
vendor/clang/dist/include/clang/Checker/DomainSpecific/
vendor/clang/dist/include/clang/Checker/DomainSpecific/CocoaConventions.h
vendor/clang/dist/include/clang/Checker/ManagerRegistry.h
vendor/clang/dist/include/clang/Checker/PathSensitive/
vendor/clang/dist/include/clang/Checker/PathSensitive/AnalysisManager.h
vendor/clang/dist/include/clang/Checker/PathSensitive/BasicValueFactory.h
vendor/clang/dist/include/clang/Checker/PathSensitive/Checker.h
vendor/clang/dist/include/clang/Checker/PathSensitive/CheckerVisitor.def
vendor/clang/dist/include/clang/Checker/PathSensitive/CheckerVisitor.h
vendor/clang/dist/include/clang/Checker/PathSensitive/ConstraintManager.h
vendor/clang/dist/include/clang/Checker/PathSensitive/Environment.h
vendor/clang/dist/include/clang/Checker/PathSensitive/ExplodedGraph.h
vendor/clang/dist/include/clang/Checker/PathSensitive/GRAuditor.h
vendor/clang/dist/include/clang/Checker/PathSensitive/GRBlockCounter.h
vendor/clang/dist/include/clang/Checker/PathSensitive/GRCoreEngine.h
vendor/clang/dist/include/clang/Checker/PathSensitive/GRExprEngine.h
vendor/clang/dist/include/clang/Checker/PathSensitive/GRExprEngineBuilders.h
vendor/clang/dist/include/clang/Checker/PathSensitive/GRSimpleAPICheck.h
vendor/clang/dist/include/clang/Checker/PathSensitive/GRState.h
vendor/clang/dist/include/clang/Checker/PathSensitive/GRStateTrait.h
vendor/clang/dist/include/clang/Checker/PathSensitive/GRSubEngine.h
vendor/clang/dist/include/clang/Checker/PathSensitive/GRTransferFuncs.h
vendor/clang/dist/include/clang/Checker/PathSensitive/GRWorkList.h
vendor/clang/dist/include/clang/Checker/PathSensitive/MemRegion.h
vendor/clang/dist/include/clang/Checker/PathSensitive/SVals.h
vendor/clang/dist/include/clang/Checker/PathSensitive/SValuator.h
vendor/clang/dist/include/clang/Checker/PathSensitive/Store.h
vendor/clang/dist/include/clang/Checker/PathSensitive/SummaryManager.h
vendor/clang/dist/include/clang/Checker/PathSensitive/SymbolManager.h
vendor/clang/dist/include/clang/Checker/PathSensitive/ValueManager.h
vendor/clang/dist/lib/AST/ASTDiagnostic.cpp
vendor/clang/dist/lib/AST/ASTImporter.cpp
vendor/clang/dist/lib/Analysis/PrintfFormatString.cpp
vendor/clang/dist/lib/Checker/
vendor/clang/dist/lib/Checker/AdjustedReturnValueChecker.cpp
vendor/clang/dist/lib/Checker/ArrayBoundChecker.cpp
vendor/clang/dist/lib/Checker/AttrNonNullChecker.cpp
vendor/clang/dist/lib/Checker/BasicConstraintManager.cpp
vendor/clang/dist/lib/Checker/BasicObjCFoundationChecks.cpp
vendor/clang/dist/lib/Checker/BasicObjCFoundationChecks.h
vendor/clang/dist/lib/Checker/BasicStore.cpp
vendor/clang/dist/lib/Checker/BasicValueFactory.cpp
vendor/clang/dist/lib/Checker/BugReporter.cpp
vendor/clang/dist/lib/Checker/BugReporterVisitors.cpp
vendor/clang/dist/lib/Checker/BuiltinFunctionChecker.cpp
vendor/clang/dist/lib/Checker/CFRefCount.cpp
vendor/clang/dist/lib/Checker/CMakeLists.txt
vendor/clang/dist/lib/Checker/CallAndMessageChecker.cpp
vendor/clang/dist/lib/Checker/CallInliner.cpp
vendor/clang/dist/lib/Checker/CastToStructChecker.cpp
vendor/clang/dist/lib/Checker/CheckDeadStores.cpp
vendor/clang/dist/lib/Checker/CheckObjCDealloc.cpp
vendor/clang/dist/lib/Checker/CheckObjCInstMethSignature.cpp
vendor/clang/dist/lib/Checker/CheckObjCUnusedIVars.cpp
vendor/clang/dist/lib/Checker/CheckSecuritySyntaxOnly.cpp
vendor/clang/dist/lib/Checker/CheckSizeofPointer.cpp
vendor/clang/dist/lib/Checker/Checker.cpp
vendor/clang/dist/lib/Checker/CocoaConventions.cpp
vendor/clang/dist/lib/Checker/DereferenceChecker.cpp
vendor/clang/dist/lib/Checker/DivZeroChecker.cpp
vendor/clang/dist/lib/Checker/Environment.cpp
vendor/clang/dist/lib/Checker/ExplodedGraph.cpp
vendor/clang/dist/lib/Checker/FixedAddressChecker.cpp
vendor/clang/dist/lib/Checker/FlatStore.cpp
vendor/clang/dist/lib/Checker/GRBlockCounter.cpp
vendor/clang/dist/lib/Checker/GRCoreEngine.cpp
vendor/clang/dist/lib/Checker/GRExprEngine.cpp
vendor/clang/dist/lib/Checker/GRExprEngineExperimentalChecks.cpp
vendor/clang/dist/lib/Checker/GRExprEngineExperimentalChecks.h
vendor/clang/dist/lib/Checker/GRExprEngineInternalChecks.h
vendor/clang/dist/lib/Checker/GRState.cpp
vendor/clang/dist/lib/Checker/LLVMConventionsChecker.cpp
vendor/clang/dist/lib/Checker/Makefile
vendor/clang/dist/lib/Checker/MallocChecker.cpp
vendor/clang/dist/lib/Checker/ManagerRegistry.cpp
vendor/clang/dist/lib/Checker/MemRegion.cpp
vendor/clang/dist/lib/Checker/NSAutoreleasePoolChecker.cpp
vendor/clang/dist/lib/Checker/NSErrorChecker.cpp
vendor/clang/dist/lib/Checker/NoReturnFunctionChecker.cpp
vendor/clang/dist/lib/Checker/OSAtomicChecker.cpp
vendor/clang/dist/lib/Checker/PathDiagnostic.cpp
vendor/clang/dist/lib/Checker/PointerArithChecker.cpp
vendor/clang/dist/lib/Checker/PointerSubChecker.cpp
vendor/clang/dist/lib/Checker/PthreadLockChecker.cpp
vendor/clang/dist/lib/Checker/RangeConstraintManager.cpp
vendor/clang/dist/lib/Checker/RegionStore.cpp
vendor/clang/dist/lib/Checker/ReturnPointerRangeChecker.cpp
vendor/clang/dist/lib/Checker/ReturnStackAddressChecker.cpp
vendor/clang/dist/lib/Checker/ReturnUndefChecker.cpp
vendor/clang/dist/lib/Checker/SVals.cpp
vendor/clang/dist/lib/Checker/SValuator.cpp
vendor/clang/dist/lib/Checker/SimpleConstraintManager.cpp
vendor/clang/dist/lib/Checker/SimpleConstraintManager.h
vendor/clang/dist/lib/Checker/SimpleSValuator.cpp
vendor/clang/dist/lib/Checker/Store.cpp
vendor/clang/dist/lib/Checker/SymbolManager.cpp
vendor/clang/dist/lib/Checker/UndefBranchChecker.cpp
vendor/clang/dist/lib/Checker/UndefCapturedBlockVarChecker.cpp
vendor/clang/dist/lib/Checker/UndefResultChecker.cpp
vendor/clang/dist/lib/Checker/UndefinedArraySubscriptChecker.cpp
vendor/clang/dist/lib/Checker/UndefinedAssignmentChecker.cpp
vendor/clang/dist/lib/Checker/VLASizeChecker.cpp
vendor/clang/dist/lib/Checker/ValueManager.cpp
vendor/clang/dist/lib/Frontend/ASTMerge.cpp
vendor/clang/dist/test/ASTMerge/
vendor/clang/dist/test/ASTMerge/Inputs/
vendor/clang/dist/test/ASTMerge/Inputs/enum1.c
vendor/clang/dist/test/ASTMerge/Inputs/enum2.c
vendor/clang/dist/test/ASTMerge/Inputs/function1.c
vendor/clang/dist/test/ASTMerge/Inputs/function2.c
vendor/clang/dist/test/ASTMerge/Inputs/interface1.m
vendor/clang/dist/test/ASTMerge/Inputs/interface2.m
vendor/clang/dist/test/ASTMerge/Inputs/lit.local.cfg
vendor/clang/dist/test/ASTMerge/Inputs/struct1.c
vendor/clang/dist/test/ASTMerge/Inputs/struct2.c
vendor/clang/dist/test/ASTMerge/Inputs/typedef1.c
vendor/clang/dist/test/ASTMerge/Inputs/typedef2.c
vendor/clang/dist/test/ASTMerge/Inputs/var1.c
vendor/clang/dist/test/ASTMerge/Inputs/var1.h
vendor/clang/dist/test/ASTMerge/Inputs/var2.c
vendor/clang/dist/test/ASTMerge/enum.c
vendor/clang/dist/test/ASTMerge/function.c
vendor/clang/dist/test/ASTMerge/interface.m
vendor/clang/dist/test/ASTMerge/struct.c
vendor/clang/dist/test/ASTMerge/typedef.c
vendor/clang/dist/test/ASTMerge/var.c
vendor/clang/dist/test/Analysis/misc-ps-flat-store.c
vendor/clang/dist/test/CXX/basic/basic.def.odr/p1-var.cpp
vendor/clang/dist/test/CXX/class.access/p4.cpp
vendor/clang/dist/test/CXX/class.access/p6.cpp
vendor/clang/dist/test/CXX/conv/conv.mem/p4.cpp
vendor/clang/dist/test/CXX/conv/conv.qual/pr6089.cpp
vendor/clang/dist/test/CXX/dcl.dcl/dcl.enum/p5.cpp
vendor/clang/dist/test/CXX/dcl.dcl/dcl.link/p7.cpp
vendor/clang/dist/test/CXX/dcl.decl/dcl.init/dcl.init.ref/p5.cpp
vendor/clang/dist/test/CXX/dcl.decl/dcl.init/p6.cpp
vendor/clang/dist/test/CXX/dcl.decl/dcl.name/p1.cpp
vendor/clang/dist/test/CXX/lex/lex.literal/lex.ccon/p1.cpp
vendor/clang/dist/test/CXX/temp/temp.arg/temp.arg.nontype/p1.cpp
vendor/clang/dist/test/CXX/temp/temp.arg/temp.arg.nontype/p5.cpp
vendor/clang/dist/test/CXX/temp/temp.fct.spec/temp.deduct/temp.deduct.call/p6.cpp
vendor/clang/dist/test/CXX/temp/temp.names/p4.cpp
vendor/clang/dist/test/CXX/temp/temp.res/temp.local/p1.cpp
vendor/clang/dist/test/CodeGen/2010-02-09-DbgSelf.m
vendor/clang/dist/test/CodeGen/2010-02-15-Dbg-MethodStart.m
vendor/clang/dist/test/CodeGen/debug-info-crash.c
vendor/clang/dist/test/CodeGenCXX/alloca-align.cpp
vendor/clang/dist/test/CodeGenCXX/internal-linkage.cpp
vendor/clang/dist/test/CodeGenCXX/mangle-exprs.cpp
vendor/clang/dist/test/CodeGenCXX/member-function-pointer-calls.cpp
vendor/clang/dist/test/CodeGenCXX/member-initializers.cpp
vendor/clang/dist/test/CodeGenCXX/no-exceptions.cpp
vendor/clang/dist/test/CodeGenCXX/pointers-to-data-members.cpp
vendor/clang/dist/test/CodeGenCXX/threadsafe-statics.cpp
vendor/clang/dist/test/CodeGenCXX/visibility.cpp
vendor/clang/dist/test/CodeGenCXX/vtable-layout.cpp
vendor/clang/dist/test/CodeGenCXX/vtable-pointer-initialization.cpp
vendor/clang/dist/test/CodeGenCXX/x86_32-arguments.cpp
vendor/clang/dist/test/CodeGenObjC/blocks-4.m
vendor/clang/dist/test/CodeGenObjC/debug-info-crash.m
vendor/clang/dist/test/CodeGenObjC/objc2-legacy-dispatch.m
vendor/clang/dist/test/CodeGenObjC/objc2-weak-block-call.m
vendor/clang/dist/test/CodeGenObjC/unwind-fn.m
vendor/clang/dist/test/Driver/darwin-iphone-defaults.m
vendor/clang/dist/test/Driver/rewrite-objc.m
vendor/clang/dist/test/FixIt/typo-crash.m
vendor/clang/dist/test/Index/annotate-tokens.c
vendor/clang/dist/test/Index/cindex-test-inclusions.c
vendor/clang/dist/test/Index/code-complete-errors.c
vendor/clang/dist/test/Index/include_test.h
vendor/clang/dist/test/Index/include_test_2.h
vendor/clang/dist/test/Index/load-stmts.cpp
vendor/clang/dist/test/Parser/altivec.c
vendor/clang/dist/test/Parser/cxx-altivec.cpp
vendor/clang/dist/test/Preprocessor/mi_opt2.c
vendor/clang/dist/test/Preprocessor/mi_opt2.h
vendor/clang/dist/test/Rewriter/blockcast3.mm
vendor/clang/dist/test/Rewriter/rewrite-block-pointer.mm
vendor/clang/dist/test/Rewriter/rewrite-cast-ivar-access.mm
vendor/clang/dist/test/Rewriter/rewrite-category-property.mm
vendor/clang/dist/test/Rewriter/rewrite-implementation.mm
vendor/clang/dist/test/Rewriter/rewrite-message-expr.mm
vendor/clang/dist/test/Rewriter/rewrite-nested-ivar.mm
vendor/clang/dist/test/Rewriter/rewrite-protocol-qualified.mm
vendor/clang/dist/test/Rewriter/rewrite-unique-block-api.mm
vendor/clang/dist/test/Sema/Inputs/
vendor/clang/dist/test/Sema/Inputs/conversion.h
vendor/clang/dist/test/Sema/arm-layout.c
vendor/clang/dist/test/Sema/warn-unused-function.c
vendor/clang/dist/test/Sema/x86-attr-force-align-arg-pointer.c
vendor/clang/dist/test/SemaCXX/Inputs/
vendor/clang/dist/test/SemaCXX/Inputs/lit.local.cfg
vendor/clang/dist/test/SemaCXX/Inputs/malloc.h
vendor/clang/dist/test/SemaCXX/builtin-exception-spec.cpp
vendor/clang/dist/test/SemaCXX/comma.cpp
vendor/clang/dist/test/SemaCXX/explicit.cpp
vendor/clang/dist/test/SemaCXX/new-delete-predefined-decl.cpp
vendor/clang/dist/test/SemaCXX/templated-friend-decl.cpp
vendor/clang/dist/test/SemaCXX/warn-missing-noreturn.cpp
vendor/clang/dist/test/SemaCXX/warn-weak-vtables.cpp
vendor/clang/dist/test/SemaObjC/default-synthesize.m
vendor/clang/dist/test/SemaObjC/duplicate-property-class-extension.m
vendor/clang/dist/test/SemaObjC/protocol-warn.m
vendor/clang/dist/test/SemaObjCXX/reinterpret-cast-objc-pointertype.mm
vendor/clang/dist/tools/CIndex/CIndexDiagnostic.cpp
vendor/clang/dist/tools/CIndex/CIndexDiagnostic.h
vendor/clang/dist/tools/CIndex/CIndexInclusionStack.cpp
vendor/clang/dist/tools/CIndex/CXSourceLocation.h
vendor/clang/dist/tools/scan-build/set-xcode-analyzer (contents, props changed)
vendor/clang/dist/www/analyzer/dev_cxx.html
vendor/clang/dist/www/analyzer/images/analyzer_html.png (contents, props changed)
vendor/clang/dist/www/analyzer/images/analyzer_xcode.png (contents, props changed)
vendor/clang/dist/www/analyzer/images/tree/
vendor/clang/dist/www/analyzer/images/tree/bullet.gif (contents, props changed)
vendor/clang/dist/www/analyzer/images/tree/minus.gif (contents, props changed)
vendor/clang/dist/www/analyzer/images/tree/plus.gif (contents, props changed)
vendor/clang/dist/www/analyzer/menu.js
vendor/clang/dist/www/analyzer/scripts/
vendor/clang/dist/www/analyzer/scripts/dbtree.js
vendor/clang/dist/www/analyzer/scripts/menu.js
Deleted:
vendor/clang/dist/include/clang/Analysis/LocalCheckers.h
vendor/clang/dist/include/clang/Analysis/ManagerRegistry.h
vendor/clang/dist/include/clang/Analysis/PathDiagnostic.h
vendor/clang/dist/include/clang/Analysis/PathSensitive/
vendor/clang/dist/lib/Analysis/ArrayBoundChecker.cpp
vendor/clang/dist/lib/Analysis/AttrNonNullChecker.cpp
vendor/clang/dist/lib/Analysis/BasicConstraintManager.cpp
vendor/clang/dist/lib/Analysis/BasicObjCFoundationChecks.cpp
vendor/clang/dist/lib/Analysis/BasicObjCFoundationChecks.h
vendor/clang/dist/lib/Analysis/BasicStore.cpp
vendor/clang/dist/lib/Analysis/BasicValueFactory.cpp
vendor/clang/dist/lib/Analysis/BugReporter.cpp
vendor/clang/dist/lib/Analysis/BugReporterVisitors.cpp
vendor/clang/dist/lib/Analysis/BuiltinFunctionChecker.cpp
vendor/clang/dist/lib/Analysis/CFRefCount.cpp
vendor/clang/dist/lib/Analysis/CallAndMessageChecker.cpp
vendor/clang/dist/lib/Analysis/CallInliner.cpp
vendor/clang/dist/lib/Analysis/CastToStructChecker.cpp
vendor/clang/dist/lib/Analysis/CheckDeadStores.cpp
vendor/clang/dist/lib/Analysis/CheckObjCDealloc.cpp
vendor/clang/dist/lib/Analysis/CheckObjCInstMethSignature.cpp
vendor/clang/dist/lib/Analysis/CheckObjCUnusedIVars.cpp
vendor/clang/dist/lib/Analysis/CheckSecuritySyntaxOnly.cpp
vendor/clang/dist/lib/Analysis/CheckSizeofPointer.cpp
vendor/clang/dist/lib/Analysis/Checker.cpp
vendor/clang/dist/lib/Analysis/DereferenceChecker.cpp
vendor/clang/dist/lib/Analysis/DivZeroChecker.cpp
vendor/clang/dist/lib/Analysis/Environment.cpp
vendor/clang/dist/lib/Analysis/ExplodedGraph.cpp
vendor/clang/dist/lib/Analysis/FixedAddressChecker.cpp
vendor/clang/dist/lib/Analysis/GRBlockCounter.cpp
vendor/clang/dist/lib/Analysis/GRCoreEngine.cpp
vendor/clang/dist/lib/Analysis/GRExprEngine.cpp
vendor/clang/dist/lib/Analysis/GRExprEngineExperimentalChecks.cpp
vendor/clang/dist/lib/Analysis/GRExprEngineExperimentalChecks.h
vendor/clang/dist/lib/Analysis/GRExprEngineInternalChecks.h
vendor/clang/dist/lib/Analysis/GRState.cpp
vendor/clang/dist/lib/Analysis/MallocChecker.cpp
vendor/clang/dist/lib/Analysis/ManagerRegistry.cpp
vendor/clang/dist/lib/Analysis/MemRegion.cpp
vendor/clang/dist/lib/Analysis/NSAutoreleasePoolChecker.cpp
vendor/clang/dist/lib/Analysis/NSErrorChecker.cpp
vendor/clang/dist/lib/Analysis/NoReturnFunctionChecker.cpp
vendor/clang/dist/lib/Analysis/OSAtomicChecker.cpp
vendor/clang/dist/lib/Analysis/PathDiagnostic.cpp
vendor/clang/dist/lib/Analysis/PointerArithChecker.cpp
vendor/clang/dist/lib/Analysis/PointerSubChecker.cpp
vendor/clang/dist/lib/Analysis/PthreadLockChecker.cpp
vendor/clang/dist/lib/Analysis/RangeConstraintManager.cpp
vendor/clang/dist/lib/Analysis/RegionStore.cpp
vendor/clang/dist/lib/Analysis/ReturnPointerRangeChecker.cpp
vendor/clang/dist/lib/Analysis/ReturnStackAddressChecker.cpp
vendor/clang/dist/lib/Analysis/ReturnUndefChecker.cpp
vendor/clang/dist/lib/Analysis/SVals.cpp
vendor/clang/dist/lib/Analysis/SValuator.cpp
vendor/clang/dist/lib/Analysis/SimpleConstraintManager.cpp
vendor/clang/dist/lib/Analysis/SimpleConstraintManager.h
vendor/clang/dist/lib/Analysis/SimpleSValuator.cpp
vendor/clang/dist/lib/Analysis/Store.cpp
vendor/clang/dist/lib/Analysis/SymbolManager.cpp
vendor/clang/dist/lib/Analysis/UndefBranchChecker.cpp
vendor/clang/dist/lib/Analysis/UndefResultChecker.cpp
vendor/clang/dist/lib/Analysis/UndefinedArraySubscriptChecker.cpp
vendor/clang/dist/lib/Analysis/UndefinedAssignmentChecker.cpp
vendor/clang/dist/lib/Analysis/VLASizeChecker.cpp
vendor/clang/dist/lib/Analysis/ValueManager.cpp
vendor/clang/dist/test/CodeGenCXX/PR4890-debug-info-dtor.cpp
vendor/clang/dist/test/CodeGenCXX/member-pointer-cast.cpp
vendor/clang/dist/test/CodeGenCXX/member-pointers-zero-init.cpp
vendor/clang/dist/test/CodeGenObjC/PR4541.m
vendor/clang/dist/test/CodeGenObjC/PR4894-recursive-debug-crash.m
Modified:
vendor/clang/dist/clang.xcodeproj/project.pbxproj
vendor/clang/dist/docs/LanguageExtensions.html
vendor/clang/dist/docs/UsersManual.html
vendor/clang/dist/examples/PrintFunctionNames/Makefile
vendor/clang/dist/examples/wpa/Makefile
vendor/clang/dist/include/clang-c/Index.h
vendor/clang/dist/include/clang/AST/ASTContext.h
vendor/clang/dist/include/clang/AST/ASTDiagnostic.h
vendor/clang/dist/include/clang/AST/Attr.h
vendor/clang/dist/include/clang/AST/CXXInheritance.h
vendor/clang/dist/include/clang/AST/Decl.h
vendor/clang/dist/include/clang/AST/DeclBase.h
vendor/clang/dist/include/clang/AST/DeclCXX.h
vendor/clang/dist/include/clang/AST/DeclObjC.h
vendor/clang/dist/include/clang/AST/DeclTemplate.h
vendor/clang/dist/include/clang/AST/DeclarationName.h
vendor/clang/dist/include/clang/AST/Expr.h
vendor/clang/dist/include/clang/AST/ExprCXX.h
vendor/clang/dist/include/clang/AST/ExprObjC.h
vendor/clang/dist/include/clang/AST/Stmt.h
vendor/clang/dist/include/clang/AST/StmtCXX.h
vendor/clang/dist/include/clang/AST/StmtNodes.def
vendor/clang/dist/include/clang/AST/StmtVisitor.h
vendor/clang/dist/include/clang/AST/Type.h
vendor/clang/dist/include/clang/AST/TypeNodes.def
vendor/clang/dist/include/clang/AST/UnresolvedSet.h
vendor/clang/dist/include/clang/Analysis/Analyses/UninitializedValues.h
vendor/clang/dist/include/clang/Analysis/Support/Optional.h
vendor/clang/dist/include/clang/Basic/Builtins.def
vendor/clang/dist/include/clang/Basic/Diagnostic.h
vendor/clang/dist/include/clang/Basic/DiagnosticASTKinds.td
vendor/clang/dist/include/clang/Basic/DiagnosticCommonKinds.td
vendor/clang/dist/include/clang/Basic/DiagnosticDriverKinds.td
vendor/clang/dist/include/clang/Basic/DiagnosticFrontendKinds.td
vendor/clang/dist/include/clang/Basic/DiagnosticGroups.td
vendor/clang/dist/include/clang/Basic/DiagnosticParseKinds.td
vendor/clang/dist/include/clang/Basic/DiagnosticSemaKinds.td
vendor/clang/dist/include/clang/Basic/LangOptions.h
vendor/clang/dist/include/clang/Basic/PartialDiagnostic.h
vendor/clang/dist/include/clang/Basic/SourceManager.h
vendor/clang/dist/include/clang/Basic/Specifiers.h
vendor/clang/dist/include/clang/Basic/TargetInfo.h
vendor/clang/dist/include/clang/Basic/TokenKinds.def
vendor/clang/dist/include/clang/Basic/Version.h
vendor/clang/dist/include/clang/CodeGen/CodeGenOptions.h
vendor/clang/dist/include/clang/Driver/CC1Options.td
vendor/clang/dist/include/clang/Driver/Driver.h
vendor/clang/dist/include/clang/Driver/Options.td
vendor/clang/dist/include/clang/Driver/Tool.h
vendor/clang/dist/include/clang/Driver/ToolChain.h
vendor/clang/dist/include/clang/Driver/Types.def
vendor/clang/dist/include/clang/Frontend/ASTConsumers.h
vendor/clang/dist/include/clang/Frontend/ASTUnit.h
vendor/clang/dist/include/clang/Frontend/Analyses.def
vendor/clang/dist/include/clang/Frontend/CompilerInstance.h
vendor/clang/dist/include/clang/Frontend/DiagnosticOptions.h
vendor/clang/dist/include/clang/Frontend/FrontendAction.h
vendor/clang/dist/include/clang/Frontend/FrontendActions.h
vendor/clang/dist/include/clang/Frontend/FrontendOptions.h
vendor/clang/dist/include/clang/Frontend/PCHBitCodes.h
vendor/clang/dist/include/clang/Frontend/PCHReader.h
vendor/clang/dist/include/clang/Lex/Lexer.h
vendor/clang/dist/include/clang/Lex/Token.h
vendor/clang/dist/include/clang/Parse/Action.h
vendor/clang/dist/include/clang/Parse/DeclSpec.h
vendor/clang/dist/include/clang/Parse/Parser.h
vendor/clang/dist/lib/AST/ASTContext.cpp
vendor/clang/dist/lib/AST/AttrImpl.cpp
vendor/clang/dist/lib/AST/CMakeLists.txt
vendor/clang/dist/lib/AST/CXXInheritance.cpp
vendor/clang/dist/lib/AST/Decl.cpp
vendor/clang/dist/lib/AST/DeclBase.cpp
vendor/clang/dist/lib/AST/DeclCXX.cpp
vendor/clang/dist/lib/AST/DeclObjC.cpp
vendor/clang/dist/lib/AST/DeclPrinter.cpp
vendor/clang/dist/lib/AST/DeclTemplate.cpp
vendor/clang/dist/lib/AST/DeclarationName.cpp
vendor/clang/dist/lib/AST/Expr.cpp
vendor/clang/dist/lib/AST/ExprCXX.cpp
vendor/clang/dist/lib/AST/ExprConstant.cpp
vendor/clang/dist/lib/AST/Makefile
vendor/clang/dist/lib/AST/RecordLayoutBuilder.cpp
vendor/clang/dist/lib/AST/Stmt.cpp
vendor/clang/dist/lib/AST/StmtDumper.cpp
vendor/clang/dist/lib/AST/StmtPrinter.cpp
vendor/clang/dist/lib/AST/StmtProfile.cpp
vendor/clang/dist/lib/AST/Type.cpp
vendor/clang/dist/lib/AST/TypePrinter.cpp
vendor/clang/dist/lib/Analysis/AnalysisContext.cpp
vendor/clang/dist/lib/Analysis/CMakeLists.txt
vendor/clang/dist/lib/Analysis/LiveVariables.cpp
vendor/clang/dist/lib/Analysis/Makefile
vendor/clang/dist/lib/Analysis/UninitializedValues.cpp
vendor/clang/dist/lib/Basic/Diagnostic.cpp
vendor/clang/dist/lib/Basic/IdentifierTable.cpp
vendor/clang/dist/lib/Basic/Makefile
vendor/clang/dist/lib/Basic/SourceManager.cpp
vendor/clang/dist/lib/Basic/TargetInfo.cpp
vendor/clang/dist/lib/Basic/Targets.cpp
vendor/clang/dist/lib/Basic/Version.cpp
vendor/clang/dist/lib/CMakeLists.txt
vendor/clang/dist/lib/CodeGen/CGBlocks.cpp
vendor/clang/dist/lib/CodeGen/CGBlocks.h
vendor/clang/dist/lib/CodeGen/CGBuiltin.cpp
vendor/clang/dist/lib/CodeGen/CGCXX.cpp
vendor/clang/dist/lib/CodeGen/CGCall.cpp
vendor/clang/dist/lib/CodeGen/CGCall.h
vendor/clang/dist/lib/CodeGen/CGClass.cpp
vendor/clang/dist/lib/CodeGen/CGDebugInfo.cpp
vendor/clang/dist/lib/CodeGen/CGDebugInfo.h
vendor/clang/dist/lib/CodeGen/CGDecl.cpp
vendor/clang/dist/lib/CodeGen/CGDeclCXX.cpp
vendor/clang/dist/lib/CodeGen/CGException.cpp
vendor/clang/dist/lib/CodeGen/CGExpr.cpp
vendor/clang/dist/lib/CodeGen/CGExprAgg.cpp
vendor/clang/dist/lib/CodeGen/CGExprCXX.cpp
vendor/clang/dist/lib/CodeGen/CGExprComplex.cpp
vendor/clang/dist/lib/CodeGen/CGExprConstant.cpp
vendor/clang/dist/lib/CodeGen/CGExprScalar.cpp
vendor/clang/dist/lib/CodeGen/CGObjC.cpp
vendor/clang/dist/lib/CodeGen/CGObjCGNU.cpp
vendor/clang/dist/lib/CodeGen/CGObjCMac.cpp
vendor/clang/dist/lib/CodeGen/CGRTTI.cpp
vendor/clang/dist/lib/CodeGen/CGRecordLayoutBuilder.cpp
vendor/clang/dist/lib/CodeGen/CGRecordLayoutBuilder.h
vendor/clang/dist/lib/CodeGen/CGStmt.cpp
vendor/clang/dist/lib/CodeGen/CGVtable.cpp
vendor/clang/dist/lib/CodeGen/CodeGenFunction.cpp
vendor/clang/dist/lib/CodeGen/CodeGenFunction.h
vendor/clang/dist/lib/CodeGen/CodeGenModule.cpp
vendor/clang/dist/lib/CodeGen/CodeGenModule.h
vendor/clang/dist/lib/CodeGen/CodeGenTypes.cpp
vendor/clang/dist/lib/CodeGen/CodeGenTypes.h
vendor/clang/dist/lib/CodeGen/GlobalDecl.h
vendor/clang/dist/lib/CodeGen/Makefile
vendor/clang/dist/lib/CodeGen/Mangle.cpp
vendor/clang/dist/lib/CodeGen/TargetInfo.cpp
vendor/clang/dist/lib/Driver/Driver.cpp
vendor/clang/dist/lib/Driver/HostInfo.cpp
vendor/clang/dist/lib/Driver/Makefile
vendor/clang/dist/lib/Driver/ToolChains.cpp
vendor/clang/dist/lib/Driver/ToolChains.h
vendor/clang/dist/lib/Driver/Tools.cpp
vendor/clang/dist/lib/Driver/Tools.h
vendor/clang/dist/lib/Frontend/ASTConsumers.cpp
vendor/clang/dist/lib/Frontend/ASTUnit.cpp
vendor/clang/dist/lib/Frontend/AnalysisConsumer.cpp
vendor/clang/dist/lib/Frontend/Backend.cpp
vendor/clang/dist/lib/Frontend/CMakeLists.txt
vendor/clang/dist/lib/Frontend/CompilerInstance.cpp
vendor/clang/dist/lib/Frontend/CompilerInvocation.cpp
vendor/clang/dist/lib/Frontend/FrontendActions.cpp
vendor/clang/dist/lib/Frontend/HTMLDiagnostics.cpp
vendor/clang/dist/lib/Frontend/InitHeaderSearch.cpp
vendor/clang/dist/lib/Frontend/InitPreprocessor.cpp
vendor/clang/dist/lib/Frontend/Makefile
vendor/clang/dist/lib/Frontend/PCHReader.cpp
vendor/clang/dist/lib/Frontend/PCHReaderDecl.cpp
vendor/clang/dist/lib/Frontend/PCHReaderStmt.cpp
vendor/clang/dist/lib/Frontend/PCHWriter.cpp
vendor/clang/dist/lib/Frontend/PCHWriterDecl.cpp
vendor/clang/dist/lib/Frontend/PCHWriterStmt.cpp
vendor/clang/dist/lib/Frontend/PlistDiagnostics.cpp
vendor/clang/dist/lib/Frontend/PrintParserCallbacks.cpp
vendor/clang/dist/lib/Frontend/RewriteObjC.cpp
vendor/clang/dist/lib/Frontend/TextDiagnosticPrinter.cpp
vendor/clang/dist/lib/Headers/xmmintrin.h
vendor/clang/dist/lib/Index/Makefile
vendor/clang/dist/lib/Lex/Lexer.cpp
vendor/clang/dist/lib/Lex/Makefile
vendor/clang/dist/lib/Lex/PPCaching.cpp
vendor/clang/dist/lib/Lex/PPDirectives.cpp
vendor/clang/dist/lib/Lex/PPMacroExpansion.cpp
vendor/clang/dist/lib/Lex/Preprocessor.cpp
vendor/clang/dist/lib/Makefile
vendor/clang/dist/lib/Parse/DeclSpec.cpp
vendor/clang/dist/lib/Parse/Makefile
vendor/clang/dist/lib/Parse/ParseDecl.cpp
vendor/clang/dist/lib/Parse/ParseDeclCXX.cpp
vendor/clang/dist/lib/Parse/ParseExpr.cpp
vendor/clang/dist/lib/Parse/ParseExprCXX.cpp
vendor/clang/dist/lib/Parse/ParseObjc.cpp
vendor/clang/dist/lib/Parse/ParseStmt.cpp
vendor/clang/dist/lib/Parse/ParseTemplate.cpp
vendor/clang/dist/lib/Parse/ParseTentative.cpp
vendor/clang/dist/lib/Parse/Parser.cpp
vendor/clang/dist/lib/Rewrite/Makefile
vendor/clang/dist/lib/Sema/IdentifierResolver.cpp
vendor/clang/dist/lib/Sema/Lookup.h
vendor/clang/dist/lib/Sema/Makefile
vendor/clang/dist/lib/Sema/Sema.cpp
vendor/clang/dist/lib/Sema/Sema.h
vendor/clang/dist/lib/Sema/SemaAccess.cpp
vendor/clang/dist/lib/Sema/SemaCXXCast.cpp
vendor/clang/dist/lib/Sema/SemaCXXScopeSpec.cpp
vendor/clang/dist/lib/Sema/SemaChecking.cpp
vendor/clang/dist/lib/Sema/SemaCodeComplete.cpp
vendor/clang/dist/lib/Sema/SemaDecl.cpp
vendor/clang/dist/lib/Sema/SemaDeclAttr.cpp
vendor/clang/dist/lib/Sema/SemaDeclCXX.cpp
vendor/clang/dist/lib/Sema/SemaDeclObjC.cpp
vendor/clang/dist/lib/Sema/SemaExceptionSpec.cpp
vendor/clang/dist/lib/Sema/SemaExpr.cpp
vendor/clang/dist/lib/Sema/SemaExprCXX.cpp
vendor/clang/dist/lib/Sema/SemaExprObjC.cpp
vendor/clang/dist/lib/Sema/SemaInit.cpp
vendor/clang/dist/lib/Sema/SemaInit.h
vendor/clang/dist/lib/Sema/SemaLookup.cpp
vendor/clang/dist/lib/Sema/SemaOverload.cpp
vendor/clang/dist/lib/Sema/SemaOverload.h
vendor/clang/dist/lib/Sema/SemaStmt.cpp
vendor/clang/dist/lib/Sema/SemaTemplate.cpp
vendor/clang/dist/lib/Sema/SemaTemplateDeduction.cpp
vendor/clang/dist/lib/Sema/SemaTemplateInstantiate.cpp
vendor/clang/dist/lib/Sema/SemaTemplateInstantiateDecl.cpp
vendor/clang/dist/lib/Sema/SemaType.cpp
vendor/clang/dist/lib/Sema/TargetAttributesSema.cpp
vendor/clang/dist/lib/Sema/TreeTransform.h
vendor/clang/dist/test/Analysis/CFDateGC.m
vendor/clang/dist/test/Analysis/CFNumber.c
vendor/clang/dist/test/Analysis/CFRetainRelease_NSAssertionHandler.m
vendor/clang/dist/test/Analysis/CGColorSpace.c
vendor/clang/dist/test/Analysis/CheckNSError.m
vendor/clang/dist/test/Analysis/MissingDealloc.m
vendor/clang/dist/test/Analysis/NSPanel.m
vendor/clang/dist/test/Analysis/NSString.m
vendor/clang/dist/test/Analysis/NSWindow.m
vendor/clang/dist/test/Analysis/NoReturn.m
vendor/clang/dist/test/Analysis/ObjCProperties.m
vendor/clang/dist/test/Analysis/ObjCRetSigs.m
vendor/clang/dist/test/Analysis/PR2599.m
vendor/clang/dist/test/Analysis/PR2978.m
vendor/clang/dist/test/Analysis/PR3991.m
vendor/clang/dist/test/Analysis/array-struct.c
vendor/clang/dist/test/Analysis/blocks.m
vendor/clang/dist/test/Analysis/casts.c
vendor/clang/dist/test/Analysis/casts.m
vendor/clang/dist/test/Analysis/cfref_PR2519.c
vendor/clang/dist/test/Analysis/cfref_rdar6080742.c
vendor/clang/dist/test/Analysis/complex.c
vendor/clang/dist/test/Analysis/concrete-address.c
vendor/clang/dist/test/Analysis/conditional-op-missing-lhs.c
vendor/clang/dist/test/Analysis/dead-stores.c
vendor/clang/dist/test/Analysis/dead-stores.cpp
vendor/clang/dist/test/Analysis/dead-stores.m
vendor/clang/dist/test/Analysis/delegates.m
vendor/clang/dist/test/Analysis/elementtype.c
vendor/clang/dist/test/Analysis/exercise-ps.c
vendor/clang/dist/test/Analysis/fields.c
vendor/clang/dist/test/Analysis/func.c
vendor/clang/dist/test/Analysis/malloc.c
vendor/clang/dist/test/Analysis/misc-ps-64.m
vendor/clang/dist/test/Analysis/misc-ps-basic-store.m
vendor/clang/dist/test/Analysis/misc-ps-eager-assume.m
vendor/clang/dist/test/Analysis/misc-ps-ranges.m
vendor/clang/dist/test/Analysis/misc-ps-region-store-i386.m
vendor/clang/dist/test/Analysis/misc-ps-region-store-x86_64.m
vendor/clang/dist/test/Analysis/misc-ps-region-store.cpp
vendor/clang/dist/test/Analysis/misc-ps-region-store.m
vendor/clang/dist/test/Analysis/misc-ps-region-store.mm
vendor/clang/dist/test/Analysis/misc-ps.m
vendor/clang/dist/test/Analysis/nil-receiver-undefined-larger-than-voidptr-ret.m
vendor/clang/dist/test/Analysis/no-exit-cfg.c
vendor/clang/dist/test/Analysis/no-outofbounds.c
vendor/clang/dist/test/Analysis/null-deref-ps-region.c
vendor/clang/dist/test/Analysis/null-deref-ps.c
vendor/clang/dist/test/Analysis/outofbound.c
vendor/clang/dist/test/Analysis/override-werror.c
vendor/clang/dist/test/Analysis/plist-output.m
vendor/clang/dist/test/Analysis/pr4209.m
vendor/clang/dist/test/Analysis/pr_2542_rdar_6793404.m
vendor/clang/dist/test/Analysis/pr_4164.c
vendor/clang/dist/test/Analysis/ptr-arith.c
vendor/clang/dist/test/Analysis/rdar-6442306-1.m
vendor/clang/dist/test/Analysis/rdar-6540084.m
vendor/clang/dist/test/Analysis/rdar-6541136-region.c
vendor/clang/dist/test/Analysis/rdar-6541136.c
vendor/clang/dist/test/Analysis/rdar-6562655.m
vendor/clang/dist/test/Analysis/rdar-6582778-basic-store.c
vendor/clang/dist/test/Analysis/rdar-6600344-nil-receiver-undefined-struct-ret.m
vendor/clang/dist/test/Analysis/rdar-7168531.m
vendor/clang/dist/test/Analysis/refcnt_naming.m
vendor/clang/dist/test/Analysis/reference.cpp
vendor/clang/dist/test/Analysis/region-1.m
vendor/clang/dist/test/Analysis/retain-release-basic-store.m
vendor/clang/dist/test/Analysis/retain-release-gc-only.m
vendor/clang/dist/test/Analysis/retain-release-region-store.m
vendor/clang/dist/test/Analysis/retain-release.m
vendor/clang/dist/test/Analysis/security-syntax-checks-no-emit.c
vendor/clang/dist/test/Analysis/security-syntax-checks.m
vendor/clang/dist/test/Analysis/stack-addr-ps.c
vendor/clang/dist/test/Analysis/uninit-msg-expr.m
vendor/clang/dist/test/Analysis/uninit-ps-rdar6145427.m
vendor/clang/dist/test/Analysis/uninit-vals-ps-region.c
vendor/clang/dist/test/Analysis/uninit-vals-ps.c
vendor/clang/dist/test/Analysis/uninit-vals.m
vendor/clang/dist/test/Analysis/unions-region.m
vendor/clang/dist/test/Analysis/unused-ivars.m
vendor/clang/dist/test/CMakeLists.txt
vendor/clang/dist/test/CXX/basic/basic.lookup/basic.lookup.elab/templateid.cpp
vendor/clang/dist/test/CXX/class.access/class.access.base/p1.cpp
vendor/clang/dist/test/CXX/class/class.local/p2.cpp
vendor/clang/dist/test/CXX/dcl.dcl/dcl.spec/dcl.fct.spec/p6.cpp
vendor/clang/dist/test/CXX/dcl.decl/dcl.init/dcl.init.ref/p5-var.cpp
vendor/clang/dist/test/CXX/expr/p8.cpp
vendor/clang/dist/test/CXX/temp/temp.decls/temp.mem/p5.cpp
vendor/clang/dist/test/CXX/temp/temp.fct.spec/temp.arg.explicit/p3.cpp
vendor/clang/dist/test/CXX/temp/temp.fct.spec/temp.deduct/temp.deduct.call/basic.cpp
vendor/clang/dist/test/CXX/temp/temp.spec/temp.expl.spec/p17.cpp
vendor/clang/dist/test/CodeGen/address-space-field1.c
vendor/clang/dist/test/CodeGen/arm-arguments.c
vendor/clang/dist/test/CodeGen/attributes.c
vendor/clang/dist/test/CodeGen/darwin-string-literals.c
vendor/clang/dist/test/CodeGen/enum.c
vendor/clang/dist/test/CodeGen/function-attributes.c
vendor/clang/dist/test/CodeGen/stdcall-fastcall.c
vendor/clang/dist/test/CodeGen/union.c
vendor/clang/dist/test/CodeGenCXX/anonymous-namespaces.cpp
vendor/clang/dist/test/CodeGenCXX/attr.cpp
vendor/clang/dist/test/CodeGenCXX/condition.cpp
vendor/clang/dist/test/CodeGenCXX/conditional-temporaries.cpp
vendor/clang/dist/test/CodeGenCXX/const-global-linkage.cpp
vendor/clang/dist/test/CodeGenCXX/const-init.cpp
vendor/clang/dist/test/CodeGenCXX/conversion-function.cpp
vendor/clang/dist/test/CodeGenCXX/debug-info.cpp
vendor/clang/dist/test/CodeGenCXX/default-destructor-synthesis.cpp
vendor/clang/dist/test/CodeGenCXX/deferred-global-init.cpp
vendor/clang/dist/test/CodeGenCXX/derived-to-base.cpp
vendor/clang/dist/test/CodeGenCXX/dyncast.cpp
vendor/clang/dist/test/CodeGenCXX/extern-c.cpp
vendor/clang/dist/test/CodeGenCXX/global-init.cpp
vendor/clang/dist/test/CodeGenCXX/global-llvm-constant.cpp
vendor/clang/dist/test/CodeGenCXX/mangle.cpp
vendor/clang/dist/test/CodeGenCXX/member-function-pointers.cpp
vendor/clang/dist/test/CodeGenCXX/reference-init.cpp
vendor/clang/dist/test/CodeGenCXX/references.cpp
vendor/clang/dist/test/CodeGenCXX/static-data-member.cpp
vendor/clang/dist/test/CodeGenCXX/static-init.cpp
vendor/clang/dist/test/CodeGenCXX/temp-order.cpp
vendor/clang/dist/test/CodeGenCXX/temporaries.cpp
vendor/clang/dist/test/CodeGenCXX/throw-expressions.cpp
vendor/clang/dist/test/CodeGenCXX/virt.cpp
vendor/clang/dist/test/CodeGenCXX/virtual-bases.cpp
vendor/clang/dist/test/CodeGenCXX/virtual-function-calls.cpp
vendor/clang/dist/test/CodeGenObjC/id-isa-codegen.m
vendor/clang/dist/test/CodeGenObjC/image-info.m
vendor/clang/dist/test/Coverage/html-diagnostics.c
vendor/clang/dist/test/Driver/darwin-ld.c
vendor/clang/dist/test/Driver/darwin-version.c
vendor/clang/dist/test/FixIt/fixit.cpp
vendor/clang/dist/test/FixIt/typo.m
vendor/clang/dist/test/Index/TestClassDecl.m
vendor/clang/dist/test/Index/TestClassForwardDecl.m
vendor/clang/dist/test/Index/c-index-api-loadTU-test.m
vendor/clang/dist/test/Index/c-index-getCursor-test.m
vendor/clang/dist/test/Index/cindex-from-source.m
vendor/clang/dist/test/Index/load-exprs.c
vendor/clang/dist/test/Index/remap-cursor-at.c
vendor/clang/dist/test/Index/remap-load.c
vendor/clang/dist/test/Misc/caret-diags-macros.c
vendor/clang/dist/test/PCH/cxx_exprs.cpp
vendor/clang/dist/test/PCH/cxx_exprs.h
vendor/clang/dist/test/Parser/cxx-decl.cpp
vendor/clang/dist/test/Parser/cxx-template-decl.cpp
vendor/clang/dist/test/Parser/declarators.c
vendor/clang/dist/test/Parser/objc-property-syntax.m
vendor/clang/dist/test/Parser/statements.c
vendor/clang/dist/test/Preprocessor/init.c
vendor/clang/dist/test/Rewriter/rewrite-byref-vars.mm
vendor/clang/dist/test/Rewriter/rewrite-typeof.mm
vendor/clang/dist/test/Sema/asm.c
vendor/clang/dist/test/Sema/attr-mode.c
vendor/clang/dist/test/Sema/attr-noreturn.c
vendor/clang/dist/test/Sema/block-args.c
vendor/clang/dist/test/Sema/block-printf-attribute-1.c
vendor/clang/dist/test/Sema/block-return.c
vendor/clang/dist/test/Sema/builtin-unary-fp.c
vendor/clang/dist/test/Sema/callingconv.c
vendor/clang/dist/test/Sema/compare.c
vendor/clang/dist/test/Sema/const-eval.c
vendor/clang/dist/test/Sema/conversion.c
vendor/clang/dist/test/Sema/declspec.c
vendor/clang/dist/test/Sema/enum.c
vendor/clang/dist/test/Sema/format-string-percentm.c
vendor/clang/dist/test/Sema/format-strings.c
vendor/clang/dist/test/Sema/function-redecl.c
vendor/clang/dist/test/Sema/incomplete-decl.c
vendor/clang/dist/test/Sema/indirect-goto.c
vendor/clang/dist/test/Sema/return-noreturn.c
vendor/clang/dist/test/Sema/return.c
vendor/clang/dist/test/Sema/scope-check.c
vendor/clang/dist/test/Sema/statements.c
vendor/clang/dist/test/Sema/stdcall-fastcall.c
vendor/clang/dist/test/Sema/switch.c
vendor/clang/dist/test/Sema/ucn-cstring.c
vendor/clang/dist/test/Sema/unused-expr.c
vendor/clang/dist/test/Sema/vla.c
vendor/clang/dist/test/SemaCXX/access-base-class.cpp
vendor/clang/dist/test/SemaCXX/access-control-check.cpp
vendor/clang/dist/test/SemaCXX/aggregate-initialization.cpp
vendor/clang/dist/test/SemaCXX/builtins.cpp
vendor/clang/dist/test/SemaCXX/cast-conversion.cpp
vendor/clang/dist/test/SemaCXX/conditional-expr.cpp
vendor/clang/dist/test/SemaCXX/constructor-initializer.cpp
vendor/clang/dist/test/SemaCXX/copy-assignment.cpp
vendor/clang/dist/test/SemaCXX/dcl_ambig_res.cpp
vendor/clang/dist/test/SemaCXX/dcl_init_aggr.cpp
vendor/clang/dist/test/SemaCXX/decl-init-ref.cpp
vendor/clang/dist/test/SemaCXX/enum.cpp
vendor/clang/dist/test/SemaCXX/i-c-e-cxx.cpp
vendor/clang/dist/test/SemaCXX/illegal-member-initialization.cpp
vendor/clang/dist/test/SemaCXX/namespace-alias.cpp
vendor/clang/dist/test/SemaCXX/nested-name-spec.cpp
vendor/clang/dist/test/SemaCXX/new-delete.cpp
vendor/clang/dist/test/SemaCXX/overload-call-copycon.cpp
vendor/clang/dist/test/SemaCXX/overload-call.cpp
vendor/clang/dist/test/SemaCXX/overload-member-call.cpp
vendor/clang/dist/test/SemaCXX/overloaded-operator-decl.cpp
vendor/clang/dist/test/SemaCXX/overloaded-operator.cpp
vendor/clang/dist/test/SemaCXX/references.cpp
vendor/clang/dist/test/SemaCXX/reinterpret-cast.cpp
vendor/clang/dist/test/SemaCXX/static-cast.cpp
vendor/clang/dist/test/SemaCXX/using-decl-1.cpp
vendor/clang/dist/test/SemaCXX/virtual-override.cpp
vendor/clang/dist/test/SemaCXX/warn-unused-variables.cpp
vendor/clang/dist/test/SemaObjC/cocoa.m
vendor/clang/dist/test/SemaObjC/exprs.m
vendor/clang/dist/test/SemaObjC/format-strings-objc.m
vendor/clang/dist/test/SemaObjC/method-arg-decay.m
vendor/clang/dist/test/SemaObjC/property-13.m
vendor/clang/dist/test/SemaObjC/property-not-lvalue.m
vendor/clang/dist/test/SemaTemplate/deduction.cpp
vendor/clang/dist/test/SemaTemplate/default-expr-arguments.cpp
vendor/clang/dist/test/SemaTemplate/explicit-instantiation.cpp
vendor/clang/dist/test/SemaTemplate/instantiate-decl-init.cpp
vendor/clang/dist/test/SemaTemplate/instantiate-declref-ice.cpp
vendor/clang/dist/test/SemaTemplate/instantiate-declref.cpp
vendor/clang/dist/test/SemaTemplate/instantiate-expr-1.cpp
vendor/clang/dist/test/SemaTemplate/instantiate-expr-4.cpp
vendor/clang/dist/test/SemaTemplate/instantiate-local-class.cpp
vendor/clang/dist/test/SemaTemplate/instantiate-member-initializers.cpp
vendor/clang/dist/test/SemaTemplate/instantiate-member-template.cpp
vendor/clang/dist/test/SemaTemplate/member-function-template.cpp
vendor/clang/dist/test/SemaTemplate/qualified-id.cpp
vendor/clang/dist/test/SemaTemplate/recursive-template-instantiation.cpp
vendor/clang/dist/test/SemaTemplate/temp_arg_nontype.cpp
vendor/clang/dist/test/SemaTemplate/temp_class_spec.cpp
vendor/clang/dist/test/SemaTemplate/template-id-expr.cpp
vendor/clang/dist/test/SemaTemplate/typename-specifier-4.cpp
vendor/clang/dist/tools/CIndex/CIndex.cpp
vendor/clang/dist/tools/CIndex/CIndex.exports
vendor/clang/dist/tools/CIndex/CIndexCodeCompletion.cpp
vendor/clang/dist/tools/CIndex/CIndexUSRs.cpp
vendor/clang/dist/tools/CIndex/CIndexer.cpp
vendor/clang/dist/tools/CIndex/CIndexer.h
vendor/clang/dist/tools/CIndex/CMakeLists.txt
vendor/clang/dist/tools/CIndex/CXCursor.cpp
vendor/clang/dist/tools/CIndex/CXCursor.h
vendor/clang/dist/tools/CIndex/Makefile
vendor/clang/dist/tools/c-index-test/Makefile
vendor/clang/dist/tools/c-index-test/c-index-test.c
vendor/clang/dist/tools/driver/CMakeLists.txt
vendor/clang/dist/tools/driver/Makefile
vendor/clang/dist/tools/driver/cc1_main.cpp
vendor/clang/dist/tools/scan-build/ccc-analyzer
vendor/clang/dist/tools/scan-build/scan-build
vendor/clang/dist/utils/ABITest/ABITestGen.py
vendor/clang/dist/utils/ABITest/TypeGen.py
vendor/clang/dist/www/analyzer/annotations.html
vendor/clang/dist/www/analyzer/available_checks.html
vendor/clang/dist/www/analyzer/content.css
vendor/clang/dist/www/analyzer/filing_bugs.html
vendor/clang/dist/www/analyzer/index.html
vendor/clang/dist/www/analyzer/installation.html
vendor/clang/dist/www/analyzer/latest_checker.html.incl
vendor/clang/dist/www/analyzer/menu.css
vendor/clang/dist/www/analyzer/menu.html.incl
vendor/clang/dist/www/analyzer/scan-build.html
vendor/clang/dist/www/comparison.html
vendor/clang/dist/www/cxx_status.html
vendor/clang/dist/www/diagnostics.html
vendor/clang/dist/www/index.html
Added: vendor/clang/dist/bindings/python/README.txt
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ vendor/clang/dist/bindings/python/README.txt Tue Feb 16 09:31:36 2010 (r203955)
@@ -0,0 +1,18 @@
+//===----------------------------------------------------------------------===//
+// Clang Python Bindings
+//===----------------------------------------------------------------------===//
+
+This directory implements Python bindings for Clang. Currently, only bindings
+for the CIndex C API exist.
+
+You may need to alter LD_LIBRARY_PATH so that the CIndex library can be
+found. The unit tests are designed to be run with 'nosetests'. For example:
+--
+$ env PYTHONPATH=$(echo ~/llvm/tools/clang/bindings/python/) \
+ LD_LIBRARY_PATH=$(llvm-config --libdir) \
+ nosetests -v
+tests.cindex.test_index.test_create ... ok
+...
+
+OK
+--
Added: vendor/clang/dist/bindings/python/clang/__init__.py
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ vendor/clang/dist/bindings/python/clang/__init__.py Tue Feb 16 09:31:36 2010 (r203955)
@@ -0,0 +1,24 @@
+#===- __init__.py - Clang Python Bindings --------------------*- python -*--===#
+#
+# The LLVM Compiler Infrastructure
+#
+# This file is distributed under the University of Illinois Open Source
+# License. See LICENSE.TXT for details.
+#
+#===------------------------------------------------------------------------===#
+
+r"""
+Clang Library Bindings
+======================
+
+This package provides access to the Clang compiler and libraries.
+
+The available modules are:
+
+ cindex
+
+ Bindings for the Clang indexing library.
+"""
+
+__all__ = ['cindex']
+
Added: vendor/clang/dist/bindings/python/clang/cindex.py
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ vendor/clang/dist/bindings/python/clang/cindex.py Tue Feb 16 09:31:36 2010 (r203955)
@@ -0,0 +1,933 @@
+#===- cindex.py - Python Indexing Library Bindings -----------*- python -*--===#
+#
+# The LLVM Compiler Infrastructure
+#
+# This file is distributed under the University of Illinois Open Source
+# License. See LICENSE.TXT for details.
+#
+#===------------------------------------------------------------------------===#
+
+r"""
+Clang Indexing Library Bindings
+===============================
+
+This module provides an interface to the Clang indexing library. It is a
+low-level interface to the indexing library which attempts to match the Clang
+API directly while also being "pythonic". Notable differences from the C API
+are:
+
+ * string results are returned as Python strings, not CXString objects.
+
+ * null cursors are translated to None.
+
+ * access to child cursors is done via iteration, not visitation.
+
+The major indexing objects are:
+
+ Index
+
+ The top-level object which manages some global library state.
+
+ TranslationUnit
+
+ High-level object encapsulating the AST for a single translation unit. These
+ can be loaded from .ast files or parsed on the fly.
+
+ Cursor
+
+ Generic object for representing a node in the AST.
+
+ SourceRange, SourceLocation, and File
+
+ Objects representing information about the input source.
+
+Most object information is exposed using properties, when the underlying API
+call is efficient.
+"""
+
+# TODO
+# ====
+#
+# o API support for invalid translation units. Currently we can't even get the
+# diagnostics on failure because they refer to locations in an object that
+# will have been invalidated.
+#
+# o fix memory management issues (currently client must hold on to index and
+# translation unit, or risk crashes).
+#
+# o expose code completion APIs.
+#
+# o cleanup ctypes wrapping, would be nice to separate the ctypes details more
+# clearly, and hide from the external interface (i.e., help(cindex)).
+#
+# o implement additional SourceLocation, SourceRange, and File methods.
+
+from ctypes import *
+
+def get_cindex_library():
+ # FIXME: It's probably not the case that the library is actually found in
+ # this location. We need a better system of identifying and loading the
+ # CIndex library. It could be on path or elsewhere, or versioned, etc.
+ import platform
+ name = platform.system()
+ if name == 'Darwin':
+ return cdll.LoadLibrary('libCIndex.dylib')
+ elif name == 'Windows':
+ return cdll.LoadLibrary('libCIndex.dll')
+ else:
+ return cdll.LoadLibrary('libCIndex.so')
+
+# ctypes doesn't implicitly convert c_void_p to the appropriate wrapper
+# object. This is a problem, because it means that from_parameter will see an
+# integer and pass the wrong value on platforms where int != void*. Work around
+# this by marshalling object arguments as void**.
+c_object_p = POINTER(c_void_p)
+
+lib = get_cindex_library()
+
+### Structures and Utility Classes ###
+
+class _CXString(Structure):
+ """Helper for transforming CXString results."""
+
+ _fields_ = [("spelling", c_char_p), ("free", c_int)]
+
+ def __del__(self):
+ _CXString_dispose(self)
+
+ @staticmethod
+ def from_result(res, fn, args):
+ assert isinstance(res, _CXString)
+ return _CXString_getCString(res)
+
+class SourceLocation(Structure):
+ """
+ A SourceLocation represents a particular location within a source file.
+ """
+ _fields_ = [("ptr_data", c_void_p * 2), ("int_data", c_uint)]
+ _data = None
+
+ def _get_instantiation(self):
+ if self._data is None:
+ f, l, c, o = c_object_p(), c_uint(), c_uint(), c_uint()
+ SourceLocation_loc(self, byref(f), byref(l), byref(c), byref(o))
+ f = File(f) if f else None
+ self._data = (f, int(l.value), int(c.value), int(c.value))
+ return self._data
+
+ @property
+ def file(self):
+ """Get the file represented by this source location."""
+ return self._get_instantiation()[0]
+
+ @property
+ def line(self):
+ """Get the line represented by this source location."""
+ return self._get_instantiation()[1]
+
+ @property
+ def column(self):
+ """Get the column represented by this source location."""
+ return self._get_instantiation()[2]
+
+ @property
+ def offset(self):
+ """Get the file offset represented by this source location."""
+ return self._get_instantiation()[3]
+
+ def __repr__(self):
+ return "<SourceLocation file %r, line %r, column %r>" % (
+ self.file.name if self.file else None, self.line, self.column)
+
+class SourceRange(Structure):
+ """
+ A SourceRange describes a range of source locations within the source
+ code.
+ """
+ _fields_ = [
+ ("ptr_data", c_void_p * 2),
+ ("begin_int_data", c_uint),
+ ("end_int_data", c_uint)]
+
+ # FIXME: Eliminate this and make normal constructor? Requires hiding ctypes
+ # object.
+ @staticmethod
+ def from_locations(start, end):
+ return SourceRange_getRange(start, end)
+
+ @property
+ def start(self):
+ """
+ Return a SourceLocation representing the first character within a
+ source range.
+ """
+ return SourceRange_start(self)
+
+ @property
+ def end(self):
+ """
+ Return a SourceLocation representing the last character within a
+ source range.
+ """
+ return SourceRange_end(self)
+
+ def __repr__(self):
+ return "<SourceRange start %r, end %r>" % (self.start, self.end)
+
+class Diagnostic(object):
+ """
+ A Diagnostic is a single instance of a Clang diagnostic. It includes the
+ diagnostic severity, the message, the location the diagnostic occurred, as
+ well as additional source ranges and associated fix-it hints.
+ """
+
+ Ignored = 0
+ Note = 1
+ Warning = 2
+ Error = 3
+ Fatal = 4
+
+ def __init__(self, severity, location, spelling, ranges, fixits):
+ self.severity = severity
+ self.location = location
+ self.spelling = spelling
+ self.ranges = ranges
+ self.fixits = fixits
+
+ def __repr__(self):
+ return "<Diagnostic severity %r, location %r, spelling %r>" % (
+ self.severity, self.location, self.spelling)
+
+class FixIt(object):
+ """
+ A FixIt represents a transformation to be applied to the source to
+ "fix-it". The fix-it shouldbe applied by replacing the given source range
+ with the given value.
+ """
+
+ def __init__(self, range, value):
+ self.range = range
+ self.value = value
+
+ def __repr__(self):
+ return "<FixIt range %r, value %r>" % (self.range, self.value)
+
+### Cursor Kinds ###
+
+class CursorKind(object):
+ """
+ A CursorKind describes the kind of entity that a cursor points to.
+ """
+
+ # The unique kind objects, indexed by id.
+ _kinds = []
+ _name_map = None
+
+ def __init__(self, value):
+ if value >= len(CursorKind._kinds):
+ CursorKind._kinds += [None] * (value - len(CursorKind._kinds) + 1)
+ if CursorKind._kinds[value] is not None:
+ raise ValueError,'CursorKind already loaded'
+ self.value = value
+ CursorKind._kinds[value] = self
+ CursorKind._name_map = None
+
+ def from_param(self):
+ return self.value
+
+ @property
+ def name(self):
+ """Get the enumeration name of this cursor kind."""
+ if self._name_map is None:
+ self._name_map = {}
+ for key,value in CursorKind.__dict__.items():
+ if isinstance(value,CursorKind):
+ self._name_map[value] = key
+ return self._name_map[self]
+
+ @staticmethod
+ def from_id(id):
+ if id >= len(CursorKind._kinds) or CursorKind._kinds[id] is None:
+ raise ValueError,'Unknown cursor kind'
+ return CursorKind._kinds[id]
+
+ @staticmethod
+ def get_all_kinds():
+ """Return all CursorKind enumeration instances."""
+ return filter(None, CursorKind._kinds)
+
+ def is_declaration(self):
+ """Test if this is a declaration kind."""
+ return CursorKind_is_decl(self)
+
+ def is_reference(self):
+ """Test if this is a reference kind."""
+ return CursorKind_is_ref(self)
+
+ def is_expression(self):
+ """Test if this is an expression kind."""
+ return CursorKind_is_expr(self)
+
+ def is_statement(self):
+ """Test if this is a statement kind."""
+ return CursorKind_is_stmt(self)
+
+ def is_invalid(self):
+ """Test if this is an invalid kind."""
+ return CursorKind_is_inv(self)
+
+ def __repr__(self):
+ return 'CursorKind.%s' % (self.name,)
+
+# FIXME: Is there a nicer way to expose this enumeration? We could potentially
+# represent the nested structure, or even build a class hierarchy. The main
+# things we want for sure are (a) simple external access to kinds, (b) a place
+# to hang a description and name, (c) easy to keep in sync with Index.h.
+
+###
+# Declaration Kinds
+
+# A declaration whose specific kind is not exposed via this interface.
+#
+# Unexposed declarations have the same operations as any other kind of
+# declaration; one can extract their location information, spelling, find their
+# definitions, etc. However, the specific kind of the declaration is not
+# reported.
+CursorKind.UNEXPOSED_DECL = CursorKind(1)
+
+# A C or C++ struct.
+CursorKind.STRUCT_DECL = CursorKind(2)
+
+# A C or C++ union.
+CursorKind.UNION_DECL = CursorKind(3)
+
+# A C++ class.
+CursorKind.CLASS_DECL = CursorKind(4)
+
+# An enumeration.
+CursorKind.ENUM_DECL = CursorKind(5)
+
+# A field (in C) or non-static data member (in C++) in a struct, union, or C++
+# class.
+CursorKind.FIELD_DECL = CursorKind(6)
+
+# An enumerator constant.
+CursorKind.ENUM_CONSTANT_DECL = CursorKind(7)
+
+# A function.
+CursorKind.FUNCTION_DECL = CursorKind(8)
+
+# A variable.
+CursorKind.VAR_DECL = CursorKind(9)
+
+# A function or method parameter.
+CursorKind.PARM_DECL = CursorKind(10)
+
+# An Objective-C @interface.
+CursorKind.OBJC_INTERFACE_DECL = CursorKind(11)
+
+# An Objective-C @interface for a category.
+CursorKind.OBJC_CATEGORY_DECL = CursorKind(12)
+
+# An Objective-C @protocol declaration.
+CursorKind.OBJC_PROTOCOL_DECL = CursorKind(13)
+
+# An Objective-C @property declaration.
+CursorKind.OBJC_PROPERTY_DECL = CursorKind(14)
+
+# An Objective-C instance variable.
+CursorKind.OBJC_IVAR_DECL = CursorKind(15)
+
+# An Objective-C instance method.
+CursorKind.OBJC_INSTANCE_METHOD_DECL = CursorKind(16)
+
+# An Objective-C class method.
+CursorKind.OBJC_CLASS_METHOD_DECL = CursorKind(17)
+
+# An Objective-C @implementation.
+CursorKind.OBJC_IMPLEMENTATION_DECL = CursorKind(18)
+
+# An Objective-C @implementation for a category.
+CursorKind.OBJC_CATEGORY_IMPL_DECL = CursorKind(19)
+
+# A typedef.
+CursorKind.TYPEDEF_DECL = CursorKind(20)
+
+###
+# Reference Kinds
+
+CursorKind.OBJC_SUPER_CLASS_REF = CursorKind(40)
+CursorKind.OBJC_PROTOCOL_REF = CursorKind(41)
+CursorKind.OBJC_CLASS_REF = CursorKind(42)
+
+# A reference to a type declaration.
+#
+# A type reference occurs anywhere where a type is named but not
+# declared. For example, given:
+# typedef unsigned size_type;
+# size_type size;
+#
+# The typedef is a declaration of size_type (CXCursor_TypedefDecl),
+# while the type of the variable "size" is referenced. The cursor
+# referenced by the type of size is the typedef for size_type.
+CursorKind.TYPE_REF = CursorKind(43)
+
+###
+# Invalid/Error Kinds
+
+CursorKind.INVALID_FILE = CursorKind(70)
+CursorKind.NO_DECL_FOUND = CursorKind(71)
+CursorKind.NOT_IMPLEMENTED = CursorKind(72)
+
+###
+# Expression Kinds
+
+# An expression whose specific kind is not exposed via this interface.
+#
+# Unexposed expressions have the same operations as any other kind of
+# expression; one can extract their location information, spelling, children,
+# etc. However, the specific kind of the expression is not reported.
+CursorKind.UNEXPOSED_EXPR = CursorKind(100)
+
+# An expression that refers to some value declaration, such as a function,
+# varible, or enumerator.
+CursorKind.DECL_REF_EXPR = CursorKind(101)
+
+# An expression that refers to a member of a struct, union, class, Objective-C
+# class, etc.
+CursorKind.MEMBER_REF_EXPR = CursorKind(102)
+
+# An expression that calls a function.
+CursorKind.CALL_EXPR = CursorKind(103)
+
+# An expression that sends a message to an Objective-C object or class.
+CursorKind.OBJC_MESSAGE_EXPR = CursorKind(104)
+
+# A statement whose specific kind is not exposed via this interface.
+#
+# Unexposed statements have the same operations as any other kind of statement;
+# one can extract their location information, spelling, children, etc. However,
+# the specific kind of the statement is not reported.
+CursorKind.UNEXPOSED_STMT = CursorKind(200)
+
+###
+# Other Kinds
+
+# Cursor that represents the translation unit itself.
+#
+# The translation unit cursor exists primarily to act as the root cursor for
+# traversing the contents of a translation unit.
+CursorKind.TRANSLATION_UNIT = CursorKind(300)
+
+### Cursors ###
+
+class Cursor(Structure):
+ """
+ The Cursor class represents a reference to an element within the AST. It
+ acts as a kind of iterator.
+ """
+ _fields_ = [("_kind_id", c_int), ("data", c_void_p * 3)]
+
+ def __eq__(self, other):
+ return Cursor_eq(self, other)
+
+ def __ne__(self, other):
+ return not Cursor_eq(self, other)
+
+ def is_definition(self):
+ """
+ Returns true if the declaration pointed at by the cursor is also a
+ definition of that entity.
+ """
+ return Cursor_is_def(self)
+
+ def get_definition(self):
+ """
+ If the cursor is a reference to a declaration or a declaration of
+ some entity, return a cursor that points to the definition of that
+ entity.
+ """
+ # TODO: Should probably check that this is either a reference or
+ # declaration prior to issuing the lookup.
+ return Cursor_def(self)
+
+ def get_usr(self):
+ """Return the Unified Symbol Resultion (USR) for the entity referenced
+ by the given cursor (or None).
+
+ A Unified Symbol Resolution (USR) is a string that identifies a
+ particular entity (function, class, variable, etc.) within a
+ program. USRs can be compared across translation units to determine,
+ e.g., when references in one translation refer to an entity defined in
+ another translation unit."""
+ return Cursor_usr(self)
+
+ @property
+ def kind(self):
+ """Return the kind of this cursor."""
+ return CursorKind.from_id(self._kind_id)
+
+ @property
+ def spelling(self):
+ """Return the spelling of the entity pointed at by the cursor."""
+ if not self.kind.is_declaration():
+ # FIXME: clang_getCursorSpelling should be fixed to not assert on
+ # this, for consistency with clang_getCursorUSR.
+ return None
+ return Cursor_spelling(self)
+
+ @property
+ def location(self):
+ """
+ Return the source location (the starting character) of the entity
+ pointed at by the cursor.
+ """
+ return Cursor_loc(self)
+
+ @property
+ def extent(self):
+ """
+ Return the source range (the range of text) occupied by the entity
+ pointed at by the cursor.
+ """
+ return Cursor_extent(self)
+
+ def get_children(self):
+ """Return an iterator for accessing the children of this cursor."""
+
+ # FIXME: Expose iteration from CIndex, PR6125.
+ def visitor(child, parent, children):
+ # FIXME: Document this assertion in API.
+ # FIXME: There should just be an isNull method.
+ assert child != Cursor_null()
+ children.append(child)
+ return 1 # continue
+ children = []
+ Cursor_visit(self, Cursor_visit_callback(visitor), children)
+ return iter(children)
+
+ @staticmethod
+ def from_result(res, fn, args):
+ assert isinstance(res, Cursor)
+ # FIXME: There should just be an isNull method.
+ if res == Cursor_null():
+ return None
+ return res
+
+## CIndex Objects ##
+
+# CIndex objects (derived from ClangObject) are essentially lightweight
+# wrappers attached to some underlying object, which is exposed via CIndex as
+# a void*.
+
+class ClangObject(object):
+ """
+ A helper for Clang objects. This class helps act as an intermediary for
+ the ctypes library and the Clang CIndex library.
+ """
+ def __init__(self, obj):
+ assert isinstance(obj, c_object_p) and obj
+ self.obj = self._as_parameter_ = obj
+
+ def from_param(self):
+ return self._as_parameter_
+
+
+class _CXUnsavedFile(Structure):
+ """Helper for passing unsaved file arguments."""
+ _fields_ = [("name", c_char_p), ("contents", c_char_p), ('length', c_ulong)]
+
+## Diagnostic Conversion ##
+
+# Diagnostic objects are temporary, we must extract all the information from the
+# diagnostic object when it is passed to the callback.
+
+_clang_getDiagnosticSeverity = lib.clang_getDiagnosticSeverity
+_clang_getDiagnosticSeverity.argtypes = [c_object_p]
+_clang_getDiagnosticSeverity.restype = c_int
+
+_clang_getDiagnosticLocation = lib.clang_getDiagnosticLocation
+_clang_getDiagnosticLocation.argtypes = [c_object_p]
+_clang_getDiagnosticLocation.restype = SourceLocation
+
+_clang_getDiagnosticSpelling = lib.clang_getDiagnosticSpelling
+_clang_getDiagnosticSpelling.argtypes = [c_object_p]
+_clang_getDiagnosticSpelling.restype = _CXString
+_clang_getDiagnosticSpelling.errcheck = _CXString.from_result
+
+_clang_getDiagnosticNumRanges = lib.clang_getDiagnosticNumRanges
+_clang_getDiagnosticNumRanges.argtypes = [c_object_p]
+_clang_getDiagnosticNumRanges.restype = c_uint
+
+_clang_getDiagnosticRange = lib.clang_getDiagnosticRange
+_clang_getDiagnosticRange.argtypes = [c_object_p, c_uint]
+_clang_getDiagnosticRange.restype = SourceRange
+
+_clang_getDiagnosticNumFixIts = lib.clang_getDiagnosticNumFixIts
+_clang_getDiagnosticNumFixIts.argtypes = [c_object_p]
+_clang_getDiagnosticNumFixIts.restype = c_uint
+
+_clang_getDiagnosticFixItKind = lib.clang_getDiagnosticFixItKind
+_clang_getDiagnosticFixItKind.argtypes = [c_object_p, c_uint]
+_clang_getDiagnosticFixItKind.restype = c_int
+
+_clang_getDiagnosticFixItInsertion = lib.clang_getDiagnosticFixItInsertion
+_clang_getDiagnosticFixItInsertion.argtypes = [c_object_p, c_uint,
+ POINTER(SourceLocation)]
+_clang_getDiagnosticFixItInsertion.restype = _CXString
+_clang_getDiagnosticFixItInsertion.errcheck = _CXString.from_result
+
+_clang_getDiagnosticFixItRemoval = lib.clang_getDiagnosticFixItRemoval
+_clang_getDiagnosticFixItRemoval.argtypes = [c_object_p, c_uint,
+ POINTER(SourceLocation)]
+_clang_getDiagnosticFixItRemoval.restype = _CXString
+_clang_getDiagnosticFixItRemoval.errcheck = _CXString.from_result
+
+_clang_getDiagnosticFixItReplacement = lib.clang_getDiagnosticFixItReplacement
+_clang_getDiagnosticFixItReplacement.argtypes = [c_object_p, c_uint,
+ POINTER(SourceRange)]
+_clang_getDiagnosticFixItReplacement.restype = _CXString
+_clang_getDiagnosticFixItReplacement.errcheck = _CXString.from_result
+
+def _convert_fixit(diag_ptr, index):
+ # We normalize all the fix-its to a single representation, this is more
+ # convenient.
+ #
+ # FIXME: Push this back into API? It isn't exactly clear what the
+ # SourceRange semantics are, we should make sure we can represent an empty
+ # range.
+ kind = _clang_getDiagnosticFixItKind(diag_ptr, index)
+ range = None
+ value = None
+ if kind == 0: # insertion
+ location = SourceLocation()
+ value = _clang_getDiagnosticFixItInsertion(diag_ptr, index,
+ byref(location))
+ range = SourceRange.from_locations(location, location)
+ elif kind == 1: # removal
+ range = _clang_getDiagnosticFixItRemoval(diag_ptr, index)
+ value = ''
+ else: # replacement
+ assert kind == 2
+ range = SourceRange()
+ value = _clang_getDiagnosticFixItReplacement(diag_ptr, index,
+ byref(range))
+ return FixIt(range, value)
+
+def _convert_diag(diag_ptr, diag_list):
+ severity = _clang_getDiagnosticSeverity(diag_ptr)
+ loc = _clang_getDiagnosticLocation(diag_ptr)
+ spelling = _clang_getDiagnosticSpelling(diag_ptr)
+
+ # Diagnostic ranges.
+ num_ranges = _clang_getDiagnosticNumRanges(diag_ptr)
+ ranges = [_clang_getDiagnosticRange(diag_ptr, i)
+ for i in range(num_ranges)]
+
+ fixits = [_convert_fixit(diag_ptr, i)
+ for i in range(_clang_getDiagnosticNumFixIts(diag_ptr))]
+
+ diag_list.append(Diagnostic(severity, loc, spelling, ranges, fixits))
+
+###
+
+class Index(ClangObject):
+ """
+ The Index type provides the primary interface to the Clang CIndex library,
+ primarily by providing an interface for reading and parsing translation
+ units.
+ """
+
+ @staticmethod
+ def create(excludeDecls=False):
+ """
+ Create a new Index.
+ Parameters:
+ excludeDecls -- Exclude local declarations from translation units.
+ """
+ return Index(Index_create(excludeDecls))
+
+ def __del__(self):
+ Index_dispose(self)
+
+ def read(self, path):
+ """Load the translation unit from the given AST file."""
+ # FIXME: In theory, we could support streaming diagnostics. It's hard to
+ # integrate this into the API cleanly, however. Resolve.
+ diags = []
+ ptr = TranslationUnit_read(self, path,
+ Diagnostic_callback(_convert_diag), diags)
+ return TranslationUnit(ptr) if ptr else None
+
+ def parse(self, path, args = [], unsaved_files = []):
+ """
+ Load the translation unit from the given source code file by running
+ clang and generating the AST before loading. Additional command line
+ parameters can be passed to clang via the args parameter.
+
+ In-memory contents for files can be provided by passing a list of pairs
+ to as unsaved_files, the first item should be the filenames to be mapped
+ and the second should be the contents to be substituted for the
+ file. The contents may be passed as strings or file objects.
+ """
+ arg_array = 0
+ if len(args):
+ arg_array = (c_char_p * len(args))(* args)
+ unsaved_files_array = 0
+ if len(unsaved_files):
+ unsaved_files_array = (_CXUnsavedFile * len(unsaved_files))()
+ for i,(name,value) in enumerate(unsaved_files):
+ if not isinstance(value, str):
+ # FIXME: It would be great to support an efficient version
+ # of this, one day.
+ value = value.read()
+ print value
+ if not isinstance(value, str):
+ raise TypeError,'Unexpected unsaved file contents.'
+ unsaved_files_array[i].name = name
+ unsaved_files_array[i].contents = value
+ unsaved_files_array[i].length = len(value)
+ # FIXME: In theory, we could support streaming diagnostics. It's hard to
+ # integrate this into the API cleanly, however. Resolve.
+ diags = []
+ ptr = TranslationUnit_parse(self, path, len(args), arg_array,
+ len(unsaved_files), unsaved_files_array,
+ Diagnostic_callback(_convert_diag), diags)
+ return TranslationUnit(ptr, diags) if ptr else None
+
+
+class TranslationUnit(ClangObject):
+ """
+ The TranslationUnit class represents a source code translation unit and
+ provides read-only access to its top-level declarations.
+ """
+
+ def __init__(self, ptr, diagnostics):
+ ClangObject.__init__(self, ptr)
+ self.diagnostics = diagnostics
+
+ def __del__(self):
+ TranslationUnit_dispose(self)
+
+ @property
+ def cursor(self):
+ """Retrieve the cursor that represents the given translation unit."""
+ return TranslationUnit_cursor(self)
+
+ @property
+ def spelling(self):
+ """Get the original translation unit source file name."""
+ return TranslationUnit_spelling(self)
+
+ def get_includes(self):
+ """
+ Return an iterable sequence of FileInclusion objects that describe the
+ sequence of inclusions in a translation unit. The first object in
+ this sequence is always the input file. Note that this method will not
+ recursively iterate over header files included through precompiled
+ headers.
+ """
+ def visitor(fobj, lptr, depth, includes):
+ loc = lptr.contents
+ includes.append(FileInclusion(loc.file, File(fobj), loc, depth))
+
+ # Automatically adapt CIndex/ctype pointers to python objects
+ includes = []
+ TranslationUnit_includes(self,
+ TranslationUnit_includes_callback(visitor),
+ includes)
+ return iter(includes)
+
+class File(ClangObject):
+ """
+ The File class represents a particular source file that is part of a
+ translation unit.
+ """
+
+ @property
+ def name(self):
+ """Return the complete file and path name of the file."""
+ return File_name(self)
+
+ @property
+ def time(self):
+ """Return the last modification time of the file."""
+ return File_time(self)
+
+class FileInclusion(object):
+ """
+ The FileInclusion class represents the inclusion of one source file by
+ another via a '#include' directive or as the input file for the translation
+ unit. This class provides information about the included file, the including
+ file, the location of the '#include' directive and the depth of the included
+ file in the stack. Note that the input file has depth 0.
+ """
+
+ def __init__(self, src, tgt, loc, depth):
+ self.source = src
+ self.include = tgt
+ self.location = loc
+ self.depth = depth
+
+ @property
+ def is_input_file(self):
+ """True if the included file is the input file."""
+ return self.depth == 0
+
+# Additional Functions and Types
+
+# String Functions
+_CXString_dispose = lib.clang_disposeString
+_CXString_dispose.argtypes = [_CXString]
+
+_CXString_getCString = lib.clang_getCString
+_CXString_getCString.argtypes = [_CXString]
+_CXString_getCString.restype = c_char_p
+
+# Source Location Functions
+SourceLocation_loc = lib.clang_getInstantiationLocation
+SourceLocation_loc.argtypes = [SourceLocation, POINTER(c_object_p),
+ POINTER(c_uint), POINTER(c_uint),
+ POINTER(c_uint)]
+
+# Source Range Functions
+SourceRange_getRange = lib.clang_getRange
+SourceRange_getRange.argtypes = [SourceLocation, SourceLocation]
+SourceRange_getRange.restype = SourceRange
+
+SourceRange_start = lib.clang_getRangeStart
+SourceRange_start.argtypes = [SourceRange]
+SourceRange_start.restype = SourceLocation
+
+SourceRange_end = lib.clang_getRangeEnd
+SourceRange_end.argtypes = [SourceRange]
+SourceRange_end.restype = SourceLocation
+
+# CursorKind Functions
+CursorKind_is_decl = lib.clang_isDeclaration
+CursorKind_is_decl.argtypes = [CursorKind]
+CursorKind_is_decl.restype = bool
+
+CursorKind_is_ref = lib.clang_isReference
+CursorKind_is_ref.argtypes = [CursorKind]
+CursorKind_is_ref.restype = bool
+
+CursorKind_is_expr = lib.clang_isExpression
+CursorKind_is_expr.argtypes = [CursorKind]
+CursorKind_is_expr.restype = bool
+
+CursorKind_is_stmt = lib.clang_isStatement
+CursorKind_is_stmt.argtypes = [CursorKind]
+CursorKind_is_stmt.restype = bool
+
+CursorKind_is_inv = lib.clang_isInvalid
+CursorKind_is_inv.argtypes = [CursorKind]
+CursorKind_is_inv.restype = bool
+
+# Cursor Functions
+# TODO: Implement this function
+Cursor_get = lib.clang_getCursor
+Cursor_get.argtypes = [TranslationUnit, SourceLocation]
+Cursor_get.restype = Cursor
+
+Cursor_null = lib.clang_getNullCursor
+Cursor_null.restype = Cursor
+
+Cursor_usr = lib.clang_getCursorUSR
+Cursor_usr.argtypes = [Cursor]
+Cursor_usr.restype = _CXString
+Cursor_usr.errcheck = _CXString.from_result
+
+Cursor_is_def = lib.clang_isCursorDefinition
+Cursor_is_def.argtypes = [Cursor]
+Cursor_is_def.restype = bool
+
+Cursor_def = lib.clang_getCursorDefinition
+Cursor_def.argtypes = [Cursor]
+Cursor_def.restype = Cursor
+Cursor_def.errcheck = Cursor.from_result
+
+Cursor_eq = lib.clang_equalCursors
+Cursor_eq.argtypes = [Cursor, Cursor]
+Cursor_eq.restype = c_uint
+
+Cursor_spelling = lib.clang_getCursorSpelling
+Cursor_spelling.argtypes = [Cursor]
+Cursor_spelling.restype = _CXString
+Cursor_spelling.errcheck = _CXString.from_result
+
+Cursor_loc = lib.clang_getCursorLocation
+Cursor_loc.argtypes = [Cursor]
+Cursor_loc.restype = SourceLocation
+
+Cursor_extent = lib.clang_getCursorExtent
+Cursor_extent.argtypes = [Cursor]
+Cursor_extent.restype = SourceRange
+
+Cursor_ref = lib.clang_getCursorReferenced
+Cursor_ref.argtypes = [Cursor]
+Cursor_ref.restype = Cursor
+Cursor_ref.errcheck = Cursor.from_result
+
+Cursor_visit_callback = CFUNCTYPE(c_int, Cursor, Cursor, py_object)
+Cursor_visit = lib.clang_visitChildren
+Cursor_visit.argtypes = [Cursor, Cursor_visit_callback, py_object]
+Cursor_visit.restype = c_uint
+
+# Index Functions
+Index_create = lib.clang_createIndex
+Index_create.argtypes = [c_int]
+Index_create.restype = c_object_p
+
+Index_dispose = lib.clang_disposeIndex
+Index_dispose.argtypes = [Index]
+
+# Translation Unit Functions
+Diagnostic_callback = CFUNCTYPE(None, c_object_p, py_object)
+
+TranslationUnit_read = lib.clang_createTranslationUnit
+TranslationUnit_read.argtypes = [Index, c_char_p,
+ Diagnostic_callback, py_object]
+TranslationUnit_read.restype = c_object_p
+
+TranslationUnit_parse = lib.clang_createTranslationUnitFromSourceFile
+TranslationUnit_parse.argtypes = [Index, c_char_p, c_int, c_void_p,
+ c_int, c_void_p,
+ Diagnostic_callback, py_object]
+TranslationUnit_parse.restype = c_object_p
+
+TranslationUnit_cursor = lib.clang_getTranslationUnitCursor
+TranslationUnit_cursor.argtypes = [TranslationUnit]
+TranslationUnit_cursor.restype = Cursor
+TranslationUnit_cursor.errcheck = Cursor.from_result
+
+TranslationUnit_spelling = lib.clang_getTranslationUnitSpelling
+TranslationUnit_spelling.argtypes = [TranslationUnit]
+TranslationUnit_spelling.restype = _CXString
+TranslationUnit_spelling.errcheck = _CXString.from_result
+
+TranslationUnit_dispose = lib.clang_disposeTranslationUnit
+TranslationUnit_dispose.argtypes = [TranslationUnit]
+
+TranslationUnit_includes_callback = CFUNCTYPE(None,
+ c_object_p,
+ POINTER(SourceLocation),
+ c_uint, py_object)
+TranslationUnit_includes = lib.clang_getInclusions
+TranslationUnit_includes.argtypes = [TranslationUnit,
+ TranslationUnit_includes_callback,
+ py_object]
+
+# File Functions
+File_name = lib.clang_getFileName
+File_name.argtypes = [File]
+File_name.restype = c_char_p
+
+File_time = lib.clang_getFileTime
+File_time.argtypes = [File]
+File_time.restype = c_uint
+
+###
+
+__all__ = ['Index', 'TranslationUnit', 'Cursor', 'CursorKind',
+ 'Diagnostic', 'FixIt', 'SourceRange', 'SourceLocation', 'File']
Added: vendor/clang/dist/bindings/python/examples/cindex/cindex-dump.py
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ vendor/clang/dist/bindings/python/examples/cindex/cindex-dump.py Tue Feb 16 09:31:36 2010 (r203955)
@@ -0,0 +1,87 @@
+#!/usr/bin/env python
+
+#===- cindex-dump.py - cindex/Python Source Dump -------------*- python -*--===#
+#
+# The LLVM Compiler Infrastructure
+#
+# This file is distributed under the University of Illinois Open Source
+# License. See LICENSE.TXT for details.
+#
+#===------------------------------------------------------------------------===#
+
+"""
+A simple command line tool for dumping a source file using the Clang Index
*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
More information about the svn-src-vendor
mailing list