Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 21 Jun 2015 14:00:58 +0000 (UTC)
From:      Dimitry Andric <dim@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org
Subject:   svn commit: r284679 - in vendor/clang/dist: . docs docs/tools include/clang-c include/clang/ARCMigrate include/clang/AST include/clang/ASTMatchers include/clang/Basic include/clang/Driver include/c...
Message-ID:  <201506211400.t5LE0wm8071753@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: dim
Date: Sun Jun 21 14:00:56 2015
New Revision: 284679
URL: https://svnweb.freebsd.org/changeset/base/284679

Log:
  Vendor import of clang trunk r240225:
  https://llvm.org/svn/llvm-project/cfe/trunk@240225

Added:
  vendor/clang/dist/docs/SafeStack.rst
  vendor/clang/dist/include/clang/Basic/BuiltinsAMDGPU.def
  vendor/clang/dist/include/clang/Frontend/PCHContainerOperations.h   (contents, props changed)
  vendor/clang/dist/lib/Basic/DiagnosticOptions.cpp   (contents, props changed)
  vendor/clang/dist/lib/Frontend/PCHContainerOperations.cpp   (contents, props changed)
  vendor/clang/dist/lib/Headers/xtestintrin.h   (contents, props changed)
  vendor/clang/dist/test/Analysis/designated-initializer.c   (contents, props changed)
  vendor/clang/dist/test/CodeGen/address-safety-attr-kasan.cpp   (contents, props changed)
  vendor/clang/dist/test/CodeGen/attr-disable-tail-calls.c   (contents, props changed)
  vendor/clang/dist/test/CodeGen/attr-mode-vector-types.c   (contents, props changed)
  vendor/clang/dist/test/CodeGen/attr-target.c   (contents, props changed)
  vendor/clang/dist/test/CodeGen/inline-asm-immediate-ubsan.c   (contents, props changed)
  vendor/clang/dist/test/CodeGen/partial-reinitialization1.c   (contents, props changed)
  vendor/clang/dist/test/CodeGen/partial-reinitialization2.c   (contents, props changed)
  vendor/clang/dist/test/CodeGen/safestack-attr.cpp   (contents, props changed)
  vendor/clang/dist/test/CodeGen/sanitize-trap.c   (contents, props changed)
  vendor/clang/dist/test/CodeGenCXX/mangle-long-double.cpp   (contents, props changed)
  vendor/clang/dist/test/CodeGenCXX/pragma-loop-safety.cpp   (contents, props changed)
  vendor/clang/dist/test/CodeGenCXX/redefine_extname.cpp   (contents, props changed)
  vendor/clang/dist/test/CoverageMapping/control-flow-macro.c   (contents, props changed)
  vendor/clang/dist/test/Driver/mrecip.c   (contents, props changed)
  vendor/clang/dist/test/Driver/shave-toolchain.c   (contents, props changed)
  vendor/clang/dist/test/FixIt/fixit-large-file.cpp   (contents, props changed)
  vendor/clang/dist/test/FixIt/fixit-nullability-declspec.cpp   (contents, props changed)
  vendor/clang/dist/test/Frontend/verify-ignore-unexpected.c   (contents, props changed)
  vendor/clang/dist/test/Headers/pmmintrin.c   (contents, props changed)
  vendor/clang/dist/test/Headers/x86intrin-2.c   (contents, props changed)
  vendor/clang/dist/test/Modules/Inputs/merge-class-definition-visibility/
  vendor/clang/dist/test/Modules/Inputs/merge-class-definition-visibility/a.h   (contents, props changed)
  vendor/clang/dist/test/Modules/Inputs/merge-class-definition-visibility/b.h   (contents, props changed)
  vendor/clang/dist/test/Modules/Inputs/merge-class-definition-visibility/c.h   (contents, props changed)
  vendor/clang/dist/test/Modules/Inputs/merge-class-definition-visibility/d.h   (contents, props changed)
  vendor/clang/dist/test/Modules/Inputs/merge-class-definition-visibility/modmap
  vendor/clang/dist/test/Modules/Inputs/submodules-merge-defs/indirect.h   (contents, props changed)
  vendor/clang/dist/test/Modules/Inputs/submodules-merge-defs/use-defs-2.h   (contents, props changed)
  vendor/clang/dist/test/Modules/Inputs/template-default-args/c.h   (contents, props changed)
  vendor/clang/dist/test/Modules/merge-class-definition-visibility.cpp   (contents, props changed)
  vendor/clang/dist/test/Modules/merge-enumerators.cpp   (contents, props changed)
  vendor/clang/dist/test/OpenMP/for_simd_codegen.cpp   (contents, props changed)
  vendor/clang/dist/test/OpenMP/parallel_for_simd_codegen.cpp   (contents, props changed)
  vendor/clang/dist/test/OpenMP/parallel_proc_bind_codegen.cpp   (contents, props changed)
  vendor/clang/dist/test/OpenMP/taskgroup_ast_print.cpp   (contents, props changed)
  vendor/clang/dist/test/OpenMP/taskgroup_codegen.cpp   (contents, props changed)
  vendor/clang/dist/test/OpenMP/taskgroup_messages.cpp   (contents, props changed)
  vendor/clang/dist/test/Parser/nullability.c   (contents, props changed)
  vendor/clang/dist/test/Parser/pragma-loop-safety.cpp   (contents, props changed)
  vendor/clang/dist/test/Preprocessor/openmp-macro-expansion.c   (contents, props changed)
  vendor/clang/dist/test/Sema/aarch64-special-register.c   (contents, props changed)
  vendor/clang/dist/test/Sema/arm-special-register.c   (contents, props changed)
  vendor/clang/dist/test/Sema/attr-mode-vector-types.c   (contents, props changed)
  vendor/clang/dist/test/Sema/attr-target.c   (contents, props changed)
  vendor/clang/dist/test/Sema/non-null-warning.c   (contents, props changed)
  vendor/clang/dist/test/Sema/nullability.c   (contents, props changed)
  vendor/clang/dist/test/Sema/stmtexprs.c   (contents, props changed)
  vendor/clang/dist/test/SemaCXX/nullability-declspec.cpp   (contents, props changed)
  vendor/clang/dist/test/SemaCXX/nullability.cpp   (contents, props changed)
  vendor/clang/dist/test/SemaObjC/attr-cf_returns.m
  vendor/clang/dist/test/SemaObjC/nullability-arc.m
  vendor/clang/dist/test/SemaObjC/nullability.m
  vendor/clang/dist/test/SemaObjC/nullable-weak-property.m
  vendor/clang/dist/test/SemaObjC/override-nullability.m
  vendor/clang/dist/test/SemaObjCXX/Inputs/nullability-consistency-1.h   (contents, props changed)
  vendor/clang/dist/test/SemaObjCXX/Inputs/nullability-consistency-2.h   (contents, props changed)
  vendor/clang/dist/test/SemaObjCXX/Inputs/nullability-consistency-3.h   (contents, props changed)
  vendor/clang/dist/test/SemaObjCXX/Inputs/nullability-consistency-4.h   (contents, props changed)
  vendor/clang/dist/test/SemaObjCXX/Inputs/nullability-consistency-5.h   (contents, props changed)
  vendor/clang/dist/test/SemaObjCXX/Inputs/nullability-consistency-6.h   (contents, props changed)
  vendor/clang/dist/test/SemaObjCXX/Inputs/nullability-consistency-7.h   (contents, props changed)
  vendor/clang/dist/test/SemaObjCXX/Inputs/nullability-consistency-8.h   (contents, props changed)
  vendor/clang/dist/test/SemaObjCXX/Inputs/nullability-consistency-system/
  vendor/clang/dist/test/SemaObjCXX/Inputs/nullability-consistency-system/nullability-consistency-system.h   (contents, props changed)
  vendor/clang/dist/test/SemaObjCXX/Inputs/nullability-pragmas-1.h   (contents, props changed)
  vendor/clang/dist/test/SemaObjCXX/Inputs/nullability-pragmas-2.h   (contents, props changed)
  vendor/clang/dist/test/SemaObjCXX/Inputs/nullability-pragmas-3.h   (contents, props changed)
  vendor/clang/dist/test/SemaObjCXX/nullability-consistency.mm
  vendor/clang/dist/test/SemaObjCXX/nullability-pragmas.mm
  vendor/clang/dist/unittests/Format/FormatTestSelective.cpp   (contents, props changed)
Deleted:
  vendor/clang/dist/include/clang/Basic/BuiltinsR600.def
Modified:
  vendor/clang/dist/.gitignore
  vendor/clang/dist/CMakeLists.txt
  vendor/clang/dist/docs/ClangFormatStyleOptions.rst
  vendor/clang/dist/docs/ControlFlowIntegrity.rst
  vendor/clang/dist/docs/LanguageExtensions.rst
  vendor/clang/dist/docs/Modules.rst
  vendor/clang/dist/docs/UsersManual.rst
  vendor/clang/dist/docs/index.rst
  vendor/clang/dist/docs/tools/clang.pod
  vendor/clang/dist/include/clang-c/Index.h
  vendor/clang/dist/include/clang/ARCMigrate/ARCMT.h
  vendor/clang/dist/include/clang/AST/ASTContext.h
  vendor/clang/dist/include/clang/AST/CommentParser.h
  vendor/clang/dist/include/clang/AST/DataRecursiveASTVisitor.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/EvaluatedExprVisitor.h
  vendor/clang/dist/include/clang/AST/Expr.h
  vendor/clang/dist/include/clang/AST/OpenMPClause.h
  vendor/clang/dist/include/clang/AST/RecursiveASTVisitor.h
  vendor/clang/dist/include/clang/AST/StmtOpenMP.h
  vendor/clang/dist/include/clang/AST/Type.h
  vendor/clang/dist/include/clang/ASTMatchers/ASTMatchersMacros.h
  vendor/clang/dist/include/clang/Basic/Attr.td
  vendor/clang/dist/include/clang/Basic/Builtins.def
  vendor/clang/dist/include/clang/Basic/BuiltinsAArch64.def
  vendor/clang/dist/include/clang/Basic/BuiltinsARM.def
  vendor/clang/dist/include/clang/Basic/BuiltinsPPC.def
  vendor/clang/dist/include/clang/Basic/BuiltinsX86.def
  vendor/clang/dist/include/clang/Basic/DiagnosticCommonKinds.td
  vendor/clang/dist/include/clang/Basic/DiagnosticGroups.td
  vendor/clang/dist/include/clang/Basic/DiagnosticLexKinds.td
  vendor/clang/dist/include/clang/Basic/DiagnosticOptions.def
  vendor/clang/dist/include/clang/Basic/DiagnosticOptions.h
  vendor/clang/dist/include/clang/Basic/DiagnosticParseKinds.td
  vendor/clang/dist/include/clang/Basic/DiagnosticSemaKinds.td
  vendor/clang/dist/include/clang/Basic/FileManager.h
  vendor/clang/dist/include/clang/Basic/LangOptions.def
  vendor/clang/dist/include/clang/Basic/OpenMPKinds.def
  vendor/clang/dist/include/clang/Basic/Sanitizers.def
  vendor/clang/dist/include/clang/Basic/Sanitizers.h
  vendor/clang/dist/include/clang/Basic/Specifiers.h
  vendor/clang/dist/include/clang/Basic/StmtNodes.td
  vendor/clang/dist/include/clang/Basic/TargetBuiltins.h
  vendor/clang/dist/include/clang/Basic/TargetInfo.h
  vendor/clang/dist/include/clang/Basic/TargetOptions.h
  vendor/clang/dist/include/clang/Basic/TokenKinds.def
  vendor/clang/dist/include/clang/Basic/arm_neon.td
  vendor/clang/dist/include/clang/Driver/CC1Options.td
  vendor/clang/dist/include/clang/Driver/CLCompatOptions.td
  vendor/clang/dist/include/clang/Driver/Driver.h
  vendor/clang/dist/include/clang/Driver/Options.td
  vendor/clang/dist/include/clang/Driver/SanitizerArgs.h
  vendor/clang/dist/include/clang/Driver/ToolChain.h
  vendor/clang/dist/include/clang/Format/Format.h
  vendor/clang/dist/include/clang/Frontend/ASTUnit.h
  vendor/clang/dist/include/clang/Frontend/CodeGenOptions.def
  vendor/clang/dist/include/clang/Frontend/CodeGenOptions.h
  vendor/clang/dist/include/clang/Frontend/CompilerInstance.h
  vendor/clang/dist/include/clang/Frontend/FrontendActions.h
  vendor/clang/dist/include/clang/Frontend/Utils.h
  vendor/clang/dist/include/clang/Lex/HeaderSearchOptions.h
  vendor/clang/dist/include/clang/Lex/ModuleMap.h
  vendor/clang/dist/include/clang/Lex/Preprocessor.h
  vendor/clang/dist/include/clang/Lex/Token.h
  vendor/clang/dist/include/clang/Parse/Parser.h
  vendor/clang/dist/include/clang/Rewrite/Frontend/FixItRewriter.h
  vendor/clang/dist/include/clang/Sema/AttributeList.h
  vendor/clang/dist/include/clang/Sema/DeclSpec.h
  vendor/clang/dist/include/clang/Sema/Lookup.h
  vendor/clang/dist/include/clang/Sema/Sema.h
  vendor/clang/dist/include/clang/Serialization/ASTBitCodes.h
  vendor/clang/dist/include/clang/Serialization/ASTReader.h
  vendor/clang/dist/include/clang/Serialization/ASTWriter.h
  vendor/clang/dist/include/clang/Serialization/GlobalModuleIndex.h
  vendor/clang/dist/include/clang/Serialization/ModuleManager.h
  vendor/clang/dist/include/clang/StaticAnalyzer/Checkers/ObjCRetainCount.h
  vendor/clang/dist/include/clang/Tooling/Refactoring.h
  vendor/clang/dist/include/clang/Tooling/Tooling.h
  vendor/clang/dist/lib/ARCMigrate/ARCMT.cpp
  vendor/clang/dist/lib/ARCMigrate/ARCMTActions.cpp
  vendor/clang/dist/lib/AST/ASTConsumer.cpp
  vendor/clang/dist/lib/AST/ASTContext.cpp
  vendor/clang/dist/lib/AST/ASTImporter.cpp
  vendor/clang/dist/lib/AST/Decl.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/Expr.cpp
  vendor/clang/dist/lib/AST/ExprClassification.cpp
  vendor/clang/dist/lib/AST/ExprConstant.cpp
  vendor/clang/dist/lib/AST/ItaniumMangle.cpp
  vendor/clang/dist/lib/AST/MicrosoftCXXABI.cpp
  vendor/clang/dist/lib/AST/MicrosoftMangle.cpp
  vendor/clang/dist/lib/AST/RecordLayoutBuilder.cpp
  vendor/clang/dist/lib/AST/Stmt.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/CFG.cpp
  vendor/clang/dist/lib/Analysis/CocoaConventions.cpp
  vendor/clang/dist/lib/Basic/CMakeLists.txt
  vendor/clang/dist/lib/Basic/Diagnostic.cpp
  vendor/clang/dist/lib/Basic/FileSystemStatCache.cpp
  vendor/clang/dist/lib/Basic/IdentifierTable.cpp
  vendor/clang/dist/lib/Basic/OpenMPKinds.cpp
  vendor/clang/dist/lib/Basic/Sanitizers.cpp
  vendor/clang/dist/lib/Basic/Targets.cpp
  vendor/clang/dist/lib/CodeGen/BackendUtil.cpp
  vendor/clang/dist/lib/CodeGen/CGBuiltin.cpp
  vendor/clang/dist/lib/CodeGen/CGCXXABI.h
  vendor/clang/dist/lib/CodeGen/CGCall.cpp
  vendor/clang/dist/lib/CodeGen/CGClass.cpp
  vendor/clang/dist/lib/CodeGen/CGDebugInfo.cpp
  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/CGExprConstant.cpp
  vendor/clang/dist/lib/CodeGen/CGExprScalar.cpp
  vendor/clang/dist/lib/CodeGen/CGLoopInfo.cpp
  vendor/clang/dist/lib/CodeGen/CGLoopInfo.h
  vendor/clang/dist/lib/CodeGen/CGObjC.cpp
  vendor/clang/dist/lib/CodeGen/CGOpenMPRuntime.cpp
  vendor/clang/dist/lib/CodeGen/CGOpenMPRuntime.h
  vendor/clang/dist/lib/CodeGen/CGStmt.cpp
  vendor/clang/dist/lib/CodeGen/CGStmtOpenMP.cpp
  vendor/clang/dist/lib/CodeGen/CGVTables.cpp
  vendor/clang/dist/lib/CodeGen/CodeGenAction.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/CoverageMappingGen.cpp
  vendor/clang/dist/lib/CodeGen/ItaniumCXXABI.cpp
  vendor/clang/dist/lib/CodeGen/MicrosoftCXXABI.cpp
  vendor/clang/dist/lib/CodeGen/SanitizerMetadata.cpp
  vendor/clang/dist/lib/Driver/Driver.cpp
  vendor/clang/dist/lib/Driver/MSVCToolChain.cpp
  vendor/clang/dist/lib/Driver/SanitizerArgs.cpp
  vendor/clang/dist/lib/Driver/ToolChain.cpp
  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/Driver/Types.cpp
  vendor/clang/dist/lib/Format/BreakableToken.cpp
  vendor/clang/dist/lib/Format/ContinuationIndenter.cpp
  vendor/clang/dist/lib/Format/ContinuationIndenter.h
  vendor/clang/dist/lib/Format/Format.cpp
  vendor/clang/dist/lib/Format/FormatToken.cpp
  vendor/clang/dist/lib/Format/FormatToken.h
  vendor/clang/dist/lib/Format/TokenAnnotator.cpp
  vendor/clang/dist/lib/Format/TokenAnnotator.h
  vendor/clang/dist/lib/Format/UnwrappedLineFormatter.cpp
  vendor/clang/dist/lib/Format/UnwrappedLineFormatter.h
  vendor/clang/dist/lib/Format/UnwrappedLineParser.cpp
  vendor/clang/dist/lib/Format/WhitespaceManager.h
  vendor/clang/dist/lib/Frontend/ASTMerge.cpp
  vendor/clang/dist/lib/Frontend/ASTUnit.cpp
  vendor/clang/dist/lib/Frontend/CMakeLists.txt
  vendor/clang/dist/lib/Frontend/ChainedIncludesSource.cpp
  vendor/clang/dist/lib/Frontend/CompilerInstance.cpp
  vendor/clang/dist/lib/Frontend/CompilerInvocation.cpp
  vendor/clang/dist/lib/Frontend/FrontendAction.cpp
  vendor/clang/dist/lib/Frontend/FrontendActions.cpp
  vendor/clang/dist/lib/Frontend/InitPreprocessor.cpp
  vendor/clang/dist/lib/Frontend/MultiplexConsumer.cpp
  vendor/clang/dist/lib/Frontend/PrintPreprocessedOutput.cpp
  vendor/clang/dist/lib/Frontend/Rewrite/FixItRewriter.cpp
  vendor/clang/dist/lib/Frontend/Rewrite/FrontendActions.cpp
  vendor/clang/dist/lib/Frontend/VerifyDiagnosticConsumer.cpp
  vendor/clang/dist/lib/Headers/CMakeLists.txt
  vendor/clang/dist/lib/Headers/Intrin.h
  vendor/clang/dist/lib/Headers/__wmmintrin_aes.h
  vendor/clang/dist/lib/Headers/__wmmintrin_pclmul.h
  vendor/clang/dist/lib/Headers/adxintrin.h
  vendor/clang/dist/lib/Headers/altivec.h
  vendor/clang/dist/lib/Headers/ammintrin.h
  vendor/clang/dist/lib/Headers/arm_acle.h
  vendor/clang/dist/lib/Headers/avx2intrin.h
  vendor/clang/dist/lib/Headers/avx512bwintrin.h
  vendor/clang/dist/lib/Headers/avx512dqintrin.h
  vendor/clang/dist/lib/Headers/avx512erintrin.h
  vendor/clang/dist/lib/Headers/avx512fintrin.h
  vendor/clang/dist/lib/Headers/avx512vlbwintrin.h
  vendor/clang/dist/lib/Headers/avx512vldqintrin.h
  vendor/clang/dist/lib/Headers/avx512vlintrin.h
  vendor/clang/dist/lib/Headers/avxintrin.h
  vendor/clang/dist/lib/Headers/bmi2intrin.h
  vendor/clang/dist/lib/Headers/bmiintrin.h
  vendor/clang/dist/lib/Headers/emmintrin.h
  vendor/clang/dist/lib/Headers/f16cintrin.h
  vendor/clang/dist/lib/Headers/fma4intrin.h
  vendor/clang/dist/lib/Headers/fmaintrin.h
  vendor/clang/dist/lib/Headers/immintrin.h
  vendor/clang/dist/lib/Headers/lzcntintrin.h
  vendor/clang/dist/lib/Headers/mm3dnow.h
  vendor/clang/dist/lib/Headers/mmintrin.h
  vendor/clang/dist/lib/Headers/nmmintrin.h
  vendor/clang/dist/lib/Headers/pmmintrin.h
  vendor/clang/dist/lib/Headers/popcntintrin.h
  vendor/clang/dist/lib/Headers/rdseedintrin.h
  vendor/clang/dist/lib/Headers/rtmintrin.h
  vendor/clang/dist/lib/Headers/shaintrin.h
  vendor/clang/dist/lib/Headers/smmintrin.h
  vendor/clang/dist/lib/Headers/tbmintrin.h
  vendor/clang/dist/lib/Headers/tmmintrin.h
  vendor/clang/dist/lib/Headers/wmmintrin.h
  vendor/clang/dist/lib/Headers/x86intrin.h
  vendor/clang/dist/lib/Headers/xmmintrin.h
  vendor/clang/dist/lib/Headers/xopintrin.h
  vendor/clang/dist/lib/Lex/HeaderSearch.cpp
  vendor/clang/dist/lib/Lex/ModuleMap.cpp
  vendor/clang/dist/lib/Lex/PPDirectives.cpp
  vendor/clang/dist/lib/Lex/PPLexerChange.cpp
  vendor/clang/dist/lib/Lex/PPMacroExpansion.cpp
  vendor/clang/dist/lib/Lex/Pragma.cpp
  vendor/clang/dist/lib/Lex/TokenConcatenation.cpp
  vendor/clang/dist/lib/Lex/TokenLexer.cpp
  vendor/clang/dist/lib/Parse/ParseCXXInlineMethods.cpp
  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/ParseOpenMP.cpp
  vendor/clang/dist/lib/Parse/ParsePragma.cpp
  vendor/clang/dist/lib/Parse/ParseStmt.cpp
  vendor/clang/dist/lib/Parse/ParseStmtAsm.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/Sema/AnalysisBasedWarnings.cpp
  vendor/clang/dist/lib/Sema/Sema.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/SemaExprCXX.cpp
  vendor/clang/dist/lib/Sema/SemaExprObjC.cpp
  vendor/clang/dist/lib/Sema/SemaInit.cpp
  vendor/clang/dist/lib/Sema/SemaLookup.cpp
  vendor/clang/dist/lib/Sema/SemaObjCProperty.cpp
  vendor/clang/dist/lib/Sema/SemaOpenMP.cpp
  vendor/clang/dist/lib/Sema/SemaOverload.cpp
  vendor/clang/dist/lib/Sema/SemaStmt.cpp
  vendor/clang/dist/lib/Sema/SemaStmtAttr.cpp
  vendor/clang/dist/lib/Sema/SemaTemplate.cpp
  vendor/clang/dist/lib/Sema/SemaTemplateInstantiateDecl.cpp
  vendor/clang/dist/lib/Sema/SemaType.cpp
  vendor/clang/dist/lib/Sema/TreeTransform.h
  vendor/clang/dist/lib/Serialization/ASTReader.cpp
  vendor/clang/dist/lib/Serialization/ASTReaderDecl.cpp
  vendor/clang/dist/lib/Serialization/ASTReaderStmt.cpp
  vendor/clang/dist/lib/Serialization/ASTWriter.cpp
  vendor/clang/dist/lib/Serialization/ASTWriterDecl.cpp
  vendor/clang/dist/lib/Serialization/ASTWriterStmt.cpp
  vendor/clang/dist/lib/Serialization/GeneratePCH.cpp
  vendor/clang/dist/lib/Serialization/GlobalModuleIndex.cpp
  vendor/clang/dist/lib/Serialization/ModuleManager.cpp
  vendor/clang/dist/lib/StaticAnalyzer/Checkers/ObjCContainersChecker.cpp
  vendor/clang/dist/lib/StaticAnalyzer/Checkers/RetainCountChecker.cpp
  vendor/clang/dist/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
  vendor/clang/dist/lib/StaticAnalyzer/Core/CallEvent.cpp
  vendor/clang/dist/lib/StaticAnalyzer/Core/ExprEngine.cpp
  vendor/clang/dist/lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp
  vendor/clang/dist/lib/StaticAnalyzer/Frontend/ModelInjector.cpp
  vendor/clang/dist/lib/Tooling/Core/Replacement.cpp
  vendor/clang/dist/lib/Tooling/Refactoring.cpp
  vendor/clang/dist/lib/Tooling/Tooling.cpp
  vendor/clang/dist/test/ARCMT/migrate-on-pch-and-module.m
  vendor/clang/dist/test/Analysis/CFContainers.mm
  vendor/clang/dist/test/Analysis/retain-release.m
  vendor/clang/dist/test/CXX/except/except.spec/p9-dynamic.cpp
  vendor/clang/dist/test/CXX/except/except.spec/p9-noexcept.cpp
  vendor/clang/dist/test/CodeGen/2004-06-17-UnorderedCompares.c
  vendor/clang/dist/test/CodeGen/arm-interrupt-attr.c
  vendor/clang/dist/test/CodeGen/arm_acle.c
  vendor/clang/dist/test/CodeGen/arm_neon_intrinsics.c
  vendor/clang/dist/test/CodeGen/bounds-checking.c
  vendor/clang/dist/test/CodeGen/builtins-arm.c
  vendor/clang/dist/test/CodeGen/builtins-arm64.c
  vendor/clang/dist/test/CodeGen/builtins-ppc-p8vector.c
  vendor/clang/dist/test/CodeGen/catch-undef-behavior.c
  vendor/clang/dist/test/CodeGen/cleanup-destslot-simple.c
  vendor/clang/dist/test/CodeGen/exceptions-seh.c
  vendor/clang/dist/test/CodeGen/exceptions.c
  vendor/clang/dist/test/CodeGen/ms-inline-asm.c
  vendor/clang/dist/test/CodeGen/stack-protector.c
  vendor/clang/dist/test/CodeGen/systemz-inline-asm.c
  vendor/clang/dist/test/CodeGen/target-data.c
  vendor/clang/dist/test/CodeGenCXX/arm.cpp
  vendor/clang/dist/test/CodeGenCXX/atomicinit.cpp
  vendor/clang/dist/test/CodeGenCXX/cfi-cast.cpp
  vendor/clang/dist/test/CodeGenCXX/cfi-vcall.cpp
  vendor/clang/dist/test/CodeGenCXX/ctor-globalopt.cpp
  vendor/clang/dist/test/CodeGenCXX/cxx11-exception-spec.cpp
  vendor/clang/dist/test/CodeGenCXX/destructors.cpp
  vendor/clang/dist/test/CodeGenCXX/dllexport.cpp
  vendor/clang/dist/test/CodeGenCXX/dynamic-cast.cpp
  vendor/clang/dist/test/CodeGenCXX/eh.cpp
  vendor/clang/dist/test/CodeGenCXX/exceptions-seh.cpp
  vendor/clang/dist/test/CodeGenCXX/init-invariant.cpp
  vendor/clang/dist/test/CodeGenCXX/microsoft-abi-member-pointers.cpp
  vendor/clang/dist/test/CodeGenCXX/microsoft-abi-thread-safe-statics.cpp
  vendor/clang/dist/test/CodeGenCXX/microsoft-abi-virtual-member-pointers.cpp
  vendor/clang/dist/test/CodeGenCXX/microsoft-abi-vmemptr-fastcall.cpp
  vendor/clang/dist/test/CodeGenCXX/mingw-w64-seh-exceptions.cpp
  vendor/clang/dist/test/CodeGenCXX/nrvo.cpp
  vendor/clang/dist/test/CodeGenCXX/partial-destruction.cpp
  vendor/clang/dist/test/CodeGenCXX/stack-reuse.cpp
  vendor/clang/dist/test/CodeGenCXX/threadsafe-statics-exceptions.cpp
  vendor/clang/dist/test/CodeGenCXX/typeid.cpp
  vendor/clang/dist/test/CodeGenCXX/windows-itanium-exceptions.cpp
  vendor/clang/dist/test/CodeGenObjC/autorelease.m
  vendor/clang/dist/test/CodeGenObjC/blocks-2.m
  vendor/clang/dist/test/CodeGenObjC/exceptions.m
  vendor/clang/dist/test/CodeGenObjC/gnu-exceptions.m
  vendor/clang/dist/test/CodeGenObjC/objc-asm-attribute-test.m
  vendor/clang/dist/test/CodeGenObjC/synchronized.m
  vendor/clang/dist/test/CodeGenObjC/terminate.m
  vendor/clang/dist/test/CodeGenObjCXX/catch-id-type.mm
  vendor/clang/dist/test/CodeGenObjCXX/debug-info-cyclic.mm
  vendor/clang/dist/test/CodeGenObjCXX/exceptions-legacy.mm
  vendor/clang/dist/test/CodeGenObjCXX/exceptions.mm
  vendor/clang/dist/test/Driver/aarch64-cpus.c
  vendor/clang/dist/test/Driver/arm-cortex-cpus.c
  vendor/clang/dist/test/Driver/asan.c
  vendor/clang/dist/test/Driver/cl-options.c
  vendor/clang/dist/test/Driver/cl-outputs.c
  vendor/clang/dist/test/Driver/fsanitize.c
  vendor/clang/dist/test/Driver/mips-as.c
  vendor/clang/dist/test/Driver/mips-features.c
  vendor/clang/dist/test/Driver/mips-integrated-as.s
  vendor/clang/dist/test/Driver/modules.mm
  vendor/clang/dist/test/Driver/r600-mcpu.cl
  vendor/clang/dist/test/Driver/rtti-options.cpp
  vendor/clang/dist/test/Driver/sparc-float.c
  vendor/clang/dist/test/Format/style-on-command-line.cpp
  vendor/clang/dist/test/Frontend/rewrite-includes-modules.c
  vendor/clang/dist/test/Headers/x86intrin.c
  vendor/clang/dist/test/Headers/xmmintrin.c
  vendor/clang/dist/test/Index/comment-objc-decls.m
  vendor/clang/dist/test/Index/complete-method-decls.m
  vendor/clang/dist/test/Index/complete-objc-message.m
  vendor/clang/dist/test/Index/complete-property-flags.m
  vendor/clang/dist/test/Index/complete-stmt.c
  vendor/clang/dist/test/Index/pch-depending-on-deleted-module.c
  vendor/clang/dist/test/Lexer/has_feature_address_sanitizer.cpp
  vendor/clang/dist/test/Modules/Inputs/submodules-merge-defs/defs.h
  vendor/clang/dist/test/Modules/Inputs/submodules-merge-defs/module.modulemap
  vendor/clang/dist/test/Modules/Inputs/submodules-merge-defs/use-defs.h
  vendor/clang/dist/test/Modules/Inputs/template-default-args/a.h
  vendor/clang/dist/test/Modules/Inputs/template-default-args/module.modulemap
  vendor/clang/dist/test/Modules/Rmodule-build.m
  vendor/clang/dist/test/Modules/Werror-Wsystem-headers.m
  vendor/clang/dist/test/Modules/Werror.m
  vendor/clang/dist/test/Modules/add-remove-private.m
  vendor/clang/dist/test/Modules/anon-namespace.cpp
  vendor/clang/dist/test/Modules/attr-unavailable.m
  vendor/clang/dist/test/Modules/auto-module-import.m
  vendor/clang/dist/test/Modules/autolink.m
  vendor/clang/dist/test/Modules/build-fail-notes.m
  vendor/clang/dist/test/Modules/builtins.m
  vendor/clang/dist/test/Modules/compiler_builtins.m
  vendor/clang/dist/test/Modules/compiler_builtins_arm.m
  vendor/clang/dist/test/Modules/config_macros.m
  vendor/clang/dist/test/Modules/conflicts.m
  vendor/clang/dist/test/Modules/crashes.m
  vendor/clang/dist/test/Modules/cstd.m
  vendor/clang/dist/test/Modules/cxx-decls.cpp
  vendor/clang/dist/test/Modules/cxx-dtor.cpp
  vendor/clang/dist/test/Modules/cxx-inline-namespace.cpp
  vendor/clang/dist/test/Modules/cxx-irgen.cpp
  vendor/clang/dist/test/Modules/cxx-linkage-cache.cpp
  vendor/clang/dist/test/Modules/cxx-lookup.cpp
  vendor/clang/dist/test/Modules/cxx-many-overloads.cpp
  vendor/clang/dist/test/Modules/cxx-templates.cpp
  vendor/clang/dist/test/Modules/cycles.c
  vendor/clang/dist/test/Modules/declare-use-compatible.cpp
  vendor/clang/dist/test/Modules/declare-use1.cpp
  vendor/clang/dist/test/Modules/declare-use2.cpp
  vendor/clang/dist/test/Modules/declare-use3.cpp
  vendor/clang/dist/test/Modules/declare-use4.cpp
  vendor/clang/dist/test/Modules/declare-use5.cpp
  vendor/clang/dist/test/Modules/decldef.m
  vendor/clang/dist/test/Modules/decldef.mm
  vendor/clang/dist/test/Modules/deferred-lookup.cpp
  vendor/clang/dist/test/Modules/dependency-dump-dependent-module.m
  vendor/clang/dist/test/Modules/dependency-dump.m
  vendor/clang/dist/test/Modules/dependency-gen-inferred-map.m
  vendor/clang/dist/test/Modules/dependency-gen-pch.m
  vendor/clang/dist/test/Modules/dependency-gen.m
  vendor/clang/dist/test/Modules/dependency-gen.modulemap
  vendor/clang/dist/test/Modules/diag-pragma.c
  vendor/clang/dist/test/Modules/diamond-pch.c
  vendor/clang/dist/test/Modules/diamond.c
  vendor/clang/dist/test/Modules/direct-module-import.m
  vendor/clang/dist/test/Modules/driver.c
  vendor/clang/dist/test/Modules/empty.modulemap
  vendor/clang/dist/test/Modules/epic-fail.m
  vendor/clang/dist/test/Modules/exclude-header.c
  vendor/clang/dist/test/Modules/explicit-build-relpath.cpp
  vendor/clang/dist/test/Modules/explicit-build.cpp
  vendor/clang/dist/test/Modules/exponential-paths.cpp
  vendor/clang/dist/test/Modules/extern_c.cpp
  vendor/clang/dist/test/Modules/extern_c_bad.cpp
  vendor/clang/dist/test/Modules/fatal-module-loader-error.m
  vendor/clang/dist/test/Modules/filename.cpp
  vendor/clang/dist/test/Modules/fmodules-validate-once-per-build-session.c
  vendor/clang/dist/test/Modules/global_index.m
  vendor/clang/dist/test/Modules/header-import.m
  vendor/clang/dist/test/Modules/ignored_macros.m
  vendor/clang/dist/test/Modules/implementation-of-module.m
  vendor/clang/dist/test/Modules/import-self.m
  vendor/clang/dist/test/Modules/include-relative.c
  vendor/clang/dist/test/Modules/include_next.c
  vendor/clang/dist/test/Modules/incomplete-module.m
  vendor/clang/dist/test/Modules/inferred-attributes.mm
  vendor/clang/dist/test/Modules/inferred-framework-case.m
  vendor/clang/dist/test/Modules/inferred-frameworks.m
  vendor/clang/dist/test/Modules/inferred-submodules.m
  vendor/clang/dist/test/Modules/invalidate-identifiers.c
  vendor/clang/dist/test/Modules/irgen.c
  vendor/clang/dist/test/Modules/linkage-merge.cpp
  vendor/clang/dist/test/Modules/linkage-merge.m
  vendor/clang/dist/test/Modules/load-after-failure.m
  vendor/clang/dist/test/Modules/load_failure.c
  vendor/clang/dist/test/Modules/lookup.cpp
  vendor/clang/dist/test/Modules/lookup.m
  vendor/clang/dist/test/Modules/macro-ambiguity.cpp
  vendor/clang/dist/test/Modules/macro-hiding.cpp
  vendor/clang/dist/test/Modules/macro-masking.cpp
  vendor/clang/dist/test/Modules/macro-reexport.cpp
  vendor/clang/dist/test/Modules/macro-undef-through-pch.m
  vendor/clang/dist/test/Modules/macros.c
  vendor/clang/dist/test/Modules/macros2.c
  vendor/clang/dist/test/Modules/malformed.cpp
  vendor/clang/dist/test/Modules/merge-anon-in-template.cpp
  vendor/clang/dist/test/Modules/merge-decl-context.cpp
  vendor/clang/dist/test/Modules/merge-decl-order.cpp
  vendor/clang/dist/test/Modules/merge-dependent-friends.cpp
  vendor/clang/dist/test/Modules/merge-friends.cpp
  vendor/clang/dist/test/Modules/merge-implicit-special-members.cpp
  vendor/clang/dist/test/Modules/merge-name-for-linkage.cpp
  vendor/clang/dist/test/Modules/merge-nested-templates.cpp
  vendor/clang/dist/test/Modules/merge-target-features.cpp
  vendor/clang/dist/test/Modules/merge-template-friend.cpp
  vendor/clang/dist/test/Modules/merge-template-members.cpp
  vendor/clang/dist/test/Modules/merge-typedefs.cpp
  vendor/clang/dist/test/Modules/merge-using-decls.cpp
  vendor/clang/dist/test/Modules/merge-vtable-codegen.cpp
  vendor/clang/dist/test/Modules/method_pool.m
  vendor/clang/dist/test/Modules/missing-header.m
  vendor/clang/dist/test/Modules/missing-submodule.m
  vendor/clang/dist/test/Modules/modify-module.m
  vendor/clang/dist/test/Modules/modular_maps.cpp
  vendor/clang/dist/test/Modules/module-private.cpp
  vendor/clang/dist/test/Modules/module_file_info.m
  vendor/clang/dist/test/Modules/modulemap-locations.m
  vendor/clang/dist/test/Modules/modules-with-same-name.m
  vendor/clang/dist/test/Modules/namespaces.cpp
  vendor/clang/dist/test/Modules/no-implicit-builds.cpp
  vendor/clang/dist/test/Modules/no-implicit-maps.cpp
  vendor/clang/dist/test/Modules/no-stale-modtime.m
  vendor/clang/dist/test/Modules/normal-module-map.cpp
  vendor/clang/dist/test/Modules/objc-categories.m
  vendor/clang/dist/test/Modules/objc_redef.m
  vendor/clang/dist/test/Modules/odr.cpp
  vendor/clang/dist/test/Modules/on-demand-build.m
  vendor/clang/dist/test/Modules/on-demand-macros.m
  vendor/clang/dist/test/Modules/pch-used.m
  vendor/clang/dist/test/Modules/pr19692.cpp
  vendor/clang/dist/test/Modules/pr20399.cpp
  vendor/clang/dist/test/Modules/pr20786.cpp
  vendor/clang/dist/test/Modules/pr21687.cpp
  vendor/clang/dist/test/Modules/preprocess.m
  vendor/clang/dist/test/Modules/private.cpp
  vendor/clang/dist/test/Modules/private1.cpp
  vendor/clang/dist/test/Modules/prune.m
  vendor/clang/dist/test/Modules/rebuild.m
  vendor/clang/dist/test/Modules/recursive.c
  vendor/clang/dist/test/Modules/recursive_visibility.mm
  vendor/clang/dist/test/Modules/redecl-add-after-load.cpp
  vendor/clang/dist/test/Modules/redecl-found-building-chains.cpp
  vendor/clang/dist/test/Modules/redecl-merge.m
  vendor/clang/dist/test/Modules/redecl-merge2.m
  vendor/clang/dist/test/Modules/redecl-namespaces.mm
  vendor/clang/dist/test/Modules/redecl-templates.cpp
  vendor/clang/dist/test/Modules/redeclarations.m
  vendor/clang/dist/test/Modules/redecls.m
  vendor/clang/dist/test/Modules/renamed.m
  vendor/clang/dist/test/Modules/require-modular-includes.m
  vendor/clang/dist/test/Modules/requires.m
  vendor/clang/dist/test/Modules/requires.mm
  vendor/clang/dist/test/Modules/resolution-change.m
  vendor/clang/dist/test/Modules/stddef.c
  vendor/clang/dist/test/Modules/stddef.m
  vendor/clang/dist/test/Modules/stress1.cpp
  vendor/clang/dist/test/Modules/strict-decluse.cpp
  vendor/clang/dist/test/Modules/string_names.cpp
  vendor/clang/dist/test/Modules/subframework-from-intermediate-path.m
  vendor/clang/dist/test/Modules/subframeworks.m
  vendor/clang/dist/test/Modules/submodule-visibility-cycles.cpp
  vendor/clang/dist/test/Modules/submodule-visibility.cpp
  vendor/clang/dist/test/Modules/submodules-merge-defs.cpp
  vendor/clang/dist/test/Modules/submodules-preprocess.cpp
  vendor/clang/dist/test/Modules/submodules.cpp
  vendor/clang/dist/test/Modules/submodules.m
  vendor/clang/dist/test/Modules/system_headers.m
  vendor/clang/dist/test/Modules/system_version.m
  vendor/clang/dist/test/Modules/template-default-args.cpp
  vendor/clang/dist/test/Modules/template-specialization-visibility.cpp
  vendor/clang/dist/test/Modules/templates-2.mm
  vendor/clang/dist/test/Modules/templates.mm
  vendor/clang/dist/test/Modules/textual-headers.cpp
  vendor/clang/dist/test/Modules/undefined-type-fixit1.cpp
  vendor/clang/dist/test/Modules/unnecessary-module-map-parsing.c
  vendor/clang/dist/test/Modules/update-after-load.cpp
  vendor/clang/dist/test/Modules/update-exception-spec.cpp
  vendor/clang/dist/test/Modules/using-decl.cpp
  vendor/clang/dist/test/Modules/va_list.m
  vendor/clang/dist/test/Modules/validate-system-headers.m
  vendor/clang/dist/test/Modules/warn-unused-local-typedef.cpp
  vendor/clang/dist/test/Modules/wildcard-submodule-exports.cpp
  vendor/clang/dist/test/OpenMP/parallel_for_codegen.cpp
  vendor/clang/dist/test/OpenMP/simd_codegen.cpp
  vendor/clang/dist/test/PCH/designated-init.c.h
  vendor/clang/dist/test/PCH/modified-module-dependency.m
  vendor/clang/dist/test/PCH/module-hash-difference.m
  vendor/clang/dist/test/Parser/MicrosoftExtensions.c
  vendor/clang/dist/test/Parser/pragma-loop.cpp
  vendor/clang/dist/test/Preprocessor/aarch64-target-features.c
  vendor/clang/dist/test/Preprocessor/pp-modules.c
  vendor/clang/dist/test/Sema/designated-initializers.c
  vendor/clang/dist/test/Sema/warn-unused-function.c
  vendor/clang/dist/test/SemaCXX/decltype.cpp
  vendor/clang/dist/test/SemaCXX/incomplete-call.cpp
  vendor/clang/dist/test/SemaObjC/arc-property-decl-attrs.m
  vendor/clang/dist/test/SemaObjC/arc-unavailable-for-weakref.m
  vendor/clang/dist/test/SemaTemplate/ms-lookup-template-base-classes.cpp
  vendor/clang/dist/test/VFS/incomplete-umbrella.m
  vendor/clang/dist/test/VFS/module-import.m
  vendor/clang/dist/test/VFS/real-path-found-first.m
  vendor/clang/dist/test/VFS/umbrella-mismatch.m
  vendor/clang/dist/tools/arcmt-test/arcmt-test.cpp
  vendor/clang/dist/tools/c-index-test/c-index-test.c
  vendor/clang/dist/tools/clang-format/git-clang-format
  vendor/clang/dist/tools/driver/cc1_main.cpp
  vendor/clang/dist/tools/driver/cc1as_main.cpp
  vendor/clang/dist/tools/driver/driver.cpp
  vendor/clang/dist/tools/libclang/ARCMigrate.cpp
  vendor/clang/dist/tools/libclang/CIndex.cpp
  vendor/clang/dist/tools/libclang/CIndexCodeCompletion.cpp
  vendor/clang/dist/tools/libclang/CIndexer.h
  vendor/clang/dist/tools/libclang/CXCursor.cpp
  vendor/clang/dist/tools/libclang/Indexing.cpp
  vendor/clang/dist/tools/scan-build/ccc-analyzer
  vendor/clang/dist/tools/scan-build/scan-build
  vendor/clang/dist/unittests/ASTMatchers/ASTMatchersTest.h
  vendor/clang/dist/unittests/Format/CMakeLists.txt
  vendor/clang/dist/unittests/Format/FormatTest.cpp
  vendor/clang/dist/unittests/Format/FormatTestJS.cpp
  vendor/clang/dist/unittests/Format/FormatTestJava.cpp
  vendor/clang/dist/unittests/Tooling/RewriterTest.cpp
  vendor/clang/dist/utils/TableGen/ClangAttrEmitter.cpp
  vendor/clang/dist/www/analyzer/scan-build.html

Modified: vendor/clang/dist/.gitignore
==============================================================================
--- vendor/clang/dist/.gitignore	Sun Jun 21 13:59:42 2015	(r284678)
+++ vendor/clang/dist/.gitignore	Sun Jun 21 14:00:56 2015	(r284679)
@@ -16,7 +16,7 @@
 # Byte compiled python modules.
 *.pyc
 # vim swap files
-.*.swp
+.*.sw?
 .sw?
 
 #==============================================================================#

Modified: vendor/clang/dist/CMakeLists.txt
==============================================================================
--- vendor/clang/dist/CMakeLists.txt	Sun Jun 21 13:59:42 2015	(r284678)
+++ vendor/clang/dist/CMakeLists.txt	Sun Jun 21 14:00:56 2015	(r284679)
@@ -320,6 +320,17 @@ function(clang_tablegen)
   endif()
 endfunction(clang_tablegen)
 
+macro(set_clang_windows_version_resource_properties name)
+  if(DEFINED windows_resource_file)
+    set_windows_version_resource_properties(${name} ${windows_resource_file}
+      VERSION_MAJOR ${CLANG_VERSION_MAJOR}
+      VERSION_MINOR ${CLANG_VERSION_MINOR}
+      VERSION_PATCHLEVEL ${CLANG_VERSION_PATCHLEVEL}
+      VERSION_STRING "${CLANG_VERSION} (${BACKEND_PACKAGE_STRING})"
+      PRODUCT_NAME "clang")
+  endif()
+endmacro()
+
 macro(add_clang_library name)
   cmake_parse_arguments(ARG
     ""
@@ -377,11 +388,13 @@ macro(add_clang_library name)
   endif()
 
   set_target_properties(${name} PROPERTIES FOLDER "Clang libraries")
+  set_clang_windows_version_resource_properties(${name})
 endmacro(add_clang_library)
 
 macro(add_clang_executable name)
   add_llvm_executable( ${name} ${ARGN} )
   set_target_properties(${name} PROPERTIES FOLDER "Clang executables")
+  set_clang_windows_version_resource_properties(${name})
 endmacro(add_clang_executable)
 
 set(CMAKE_INCLUDE_CURRENT_DIR ON)

Modified: vendor/clang/dist/docs/ClangFormatStyleOptions.rst
==============================================================================
--- vendor/clang/dist/docs/ClangFormatStyleOptions.rst	Sun Jun 21 13:59:42 2015	(r284678)
+++ vendor/clang/dist/docs/ClangFormatStyleOptions.rst	Sun Jun 21 14:00:56 2015	(r284679)
@@ -155,23 +155,21 @@ the configuration (without a prefix: ``A
 
   This applies to round brackets (parentheses), angle brackets and square
   brackets. This will result in formattings like
-
-  .. code-block:: c++
-
-    someLongFunction(argument1,
-    argument2);
+  \code
+  someLongFunction(argument1,
+  argument2);
+  \endcode
 
 **AlignConsecutiveAssignments** (``bool``)
   If ``true``, aligns consecutive assignments.
 
   This will align the assignment operators of consecutive lines. This
   will result in formattings like
-
-  .. code-block:: c++
-
-    int aaaa = 12;
-    int b    = 23;
-    int ccc  = 23;
+  \code
+  int aaaa = 12;
+  int b    = 23;
+  int ccc  = 23;
+  \endcode
 
 **AlignEscapedNewlinesLeft** (``bool``)
   If ``true``, aligns escaped newlines as far left as possible.
@@ -204,10 +202,10 @@ the configuration (without a prefix: ``A
 
   * ``SFS_None`` (in configuration: ``None``)
     Never merge functions into a single line.
-  * ``SFS_Inline`` (in configuration: ``Inline``)
-    Only merge functions defined inside a class.
   * ``SFS_Empty`` (in configuration: ``Empty``)
     Only merge empty functions.
+  * ``SFS_Inline`` (in configuration: ``Inline``)
+    Only merge functions defined inside a class. Implies "empty".
   * ``SFS_All`` (in configuration: ``All``)
     Merge all functions fitting on a single line.
 
@@ -230,6 +228,11 @@ the configuration (without a prefix: ``A
 **AlwaysBreakBeforeMultilineStrings** (``bool``)
   If ``true``, always break before multiline string literals.
 
+  This flag is mean to make cases where there are multiple multiline strings
+  in a file look more consistent. Thus, it will only take effect if wrapping
+  the string at that point leads to it being indented
+  ``ContinuationIndentWidth`` spaces from the start of the line.
+
 **AlwaysBreakTemplateDeclarations** (``bool``)
   If ``true``, always break after the ``template<...>`` of a
   template declaration.
@@ -343,11 +346,10 @@ the configuration (without a prefix: ``A
   instead of as function calls.
 
   These are expected to be macros of the form:
-
-    .. code-block:: c++
-
-      FOREACH(<variable-declaration>, ...)
-      <loop-body>
+  \code
+  FOREACH(<variable-declaration>, ...)
+  <loop-body>
+  \endcode
 
   For example: BOOST_FOREACH.
 

Modified: vendor/clang/dist/docs/ControlFlowIntegrity.rst
==============================================================================
--- vendor/clang/dist/docs/ControlFlowIntegrity.rst	Sun Jun 21 13:59:42 2015	(r284678)
+++ vendor/clang/dist/docs/ControlFlowIntegrity.rst	Sun Jun 21 14:00:56 2015	(r284679)
@@ -20,8 +20,8 @@ program's control flow. These schemes ha
 allowing developers to enable them in release builds.
 
 To enable Clang's available CFI schemes, use the flag ``-fsanitize=cfi``.
-As currently implemented, CFI relies on link-time optimization (LTO); the CFI
-schemes imply ``-flto``, and the linker used must support LTO, for example
+As currently implemented, CFI relies on link-time optimization (LTO); so it is
+required to specify ``-flto``, and the linker used must support LTO, for example
 via the `gold plugin`_. To allow the checks to be implemented efficiently,
 the program must be structured such that certain object files are compiled
 with CFI enabled, and are statically linked into the program. This may

Modified: vendor/clang/dist/docs/LanguageExtensions.rst
==============================================================================
--- vendor/clang/dist/docs/LanguageExtensions.rst	Sun Jun 21 13:59:42 2015	(r284678)
+++ vendor/clang/dist/docs/LanguageExtensions.rst	Sun Jun 21 14:00:56 2015	(r284679)
@@ -1845,6 +1845,9 @@ with :doc:`ThreadSanitizer`.
 Use ``__has_feature(memory_sanitizer)`` to check if the code is being built
 with :doc:`MemorySanitizer`.
 
+Use ``__has_feature(safe_stack)`` to check if the code is being built
+with :doc:`SafeStack`.
+
 
 Extensions for selectively disabling optimization
 =================================================

Modified: vendor/clang/dist/docs/Modules.rst
==============================================================================
--- vendor/clang/dist/docs/Modules.rst	Sun Jun 21 13:59:42 2015	(r284678)
+++ vendor/clang/dist/docs/Modules.rst	Sun Jun 21 14:00:56 2015	(r284679)
@@ -159,7 +159,7 @@ Module maps are specified as separate fi
 
   To actually see any benefits from modules, one first has to introduce module maps for the underlying C standard library and the libraries and headers on which it depends. The section `Modularizing a Platform`_ describes the steps one must take to write these module maps.
   
-One can use module maps without modules to check the integrity of the use of header files. To do this, use the ``-fmodule-maps`` option instead of the ``-fmodules`` option.
+One can use module maps without modules to check the integrity of the use of header files. To do this, use the ``-fimplicit-module-maps`` option instead of the ``-fmodules`` option, or use ``-fmodule-map-file=`` option to explicitly specify the module map files to load.
 
 Compilation model
 -----------------
@@ -174,8 +174,8 @@ Command-line parameters
 ``-fmodules``
   Enable the modules feature.
 
-``-fmodule-maps``
-  Enable interpretation of module maps. This option is implied by ``-fmodules``.
+``-fimplicit-module-maps``
+  Enable implicit search for module map files named ``module.modulemap`` and similar. This option is implied by ``-fmodules``. If this is disabled with ``-fno-implicit-module-maps``, module map files will only be loaded if they are explicitly specified via ``-fmodule-map-file`` or transitively used by another module map file.
 
 ``-fmodules-cache-path=<directory>``
   Specify the path to the modules cache. If not provided, Clang will select a system-appropriate default.
@@ -207,9 +207,6 @@ Command-line parameters
 ``-fmodules-search-all``
   If a symbol is not found, search modules referenced in the current module maps but not imported for symbols, so the error message can reference the module by name.  Note that if the global module index has not been built before, this might take some time as it needs to build all the modules.  Note that this option doesn't apply in module builds, to avoid the recursion.
 
-``-fno-modules-implicit-maps``
-  Suppresses the implicit search for files called ``module.modulemap`` and similar. Instead, module files need to be explicitly specified via ``-fmodule-map-file`` or transitively used.
-
 ``-fno-implicit-modules``
   All modules used by the build must be specified with ``-fmodule-file``.
 
@@ -682,7 +679,7 @@ A *link-declaration* with the ``framewor
 
 Configuration macros declaration
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-The *config-macros-declaration* specifies the set of configuration macros that have an effect on the the API of the enclosing module.
+The *config-macros-declaration* specifies the set of configuration macros that have an effect on the API of the enclosing module.
 
 .. parsed-literal::
 

Added: vendor/clang/dist/docs/SafeStack.rst
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ vendor/clang/dist/docs/SafeStack.rst	Sun Jun 21 14:00:56 2015	(r284679)
@@ -0,0 +1,163 @@
+=========
+SafeStack
+=========
+
+.. contents::
+   :local:
+
+Introduction
+============
+
+SafeStack is an instrumentation pass that protects programs against attacks
+based on stack buffer overflows, without introducing any measurable performance
+overhead. It works by separating the program stack into two distinct regions:
+the safe stack and the unsafe stack. The safe stack stores return addresses,
+register spills, and local variables that are always accessed in a safe way,
+while the unsafe stack stores everything else. This separation ensures that
+buffer overflows on the unsafe stack cannot be used to overwrite anything
+on the safe stack, which includes return addresses.
+
+Performance
+-----------
+
+The performance overhead of the SafeStack instrumentation is less than 0.1% on
+average across a variety of benchmarks (see the `Code-Pointer Integrity
+<http://dslab.epfl.ch/pubs/cpi.pdf>`_ paper for details). This is mainly
+because most small functions do not have any variables that require the unsafe
+stack and, hence, do not need unsafe stack frames to be created. The cost of
+creating unsafe stack frames for large functions is amortized by the cost of
+executing the function.
+
+In some cases, SafeStack actually improves the performance. Objects that end up
+being moved to the unsafe stack are usually large arrays or variables that are
+used through multiple stack frames. Moving such objects away from the safe
+stack increases the locality of frequently accessed values on the stack, such
+as register spills, return addresses, and small local variables.
+
+Limitations
+-----------
+
+SafeStack has not been subjected to a comprehensive security review, and there
+exist known weaknesses, including but not limited to the following.
+
+In its current state, the separation of local variables provides protection
+against stack buffer overflows, but the safe stack itself is not protected
+from being corrupted through a pointer dereference. The Code-Pointer
+Integrity paper describes two ways in which we may protect the safe stack:
+hardware segmentation on the 32-bit x86 architecture or information hiding
+on other architectures.
+
+Even with information hiding, the safe stack would merely be hidden
+from attackers by being somewhere in the address space. Depending on the
+application, the address could be predictable even on 64-bit address spaces
+because not all the bits are addressable, multiple threads each have their
+stack, the application could leak the safe stack address to memory via
+``__builtin_frame_address``, bugs in the low-level runtime support etc.
+Safe stack leaks could be mitigated by writing and deploying a static binary
+analysis or a dynamic binary instrumentation based tool to find leaks.
+
+This approach doesn't prevent an attacker from "imbalancing" the safe
+stack by say having just one call, and doing two rets (thereby returning
+to an address that wasn't meant as a return address). This can be at least
+partially mitigated by deploying SafeStack alongside a forward control-flow
+integrity mechanism to ensure that calls are made using the correct calling
+convention. Clang does not currently implement a comprehensive forward
+control-flow integrity protection scheme; there exists one that protects
+:doc:`virtual calls <ControlFlowIntegrity>` but not non-virtual indirect calls.
+
+Compatibility
+-------------
+
+Most programs, static libraries, or individual files can be compiled
+with SafeStack as is. SafeStack requires basic runtime support, which, on most
+platforms, is implemented as a compiler-rt library that is automatically linked
+in when the program is compiled with SafeStack.
+
+Linking a DSO with SafeStack is not currently supported.
+
+Known compatibility limitations
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Certain code that relies on low-level stack manipulations requires adaption to
+work with SafeStack. One example is mark-and-sweep garbage collection
+implementations for C/C++ (e.g., Oilpan in chromium/blink), which must be
+changed to look for the live pointers on both safe and unsafe stacks.
+
+SafeStack supports linking together modules that are compiled with and without
+SafeStack, both statically and dynamically. One corner case that is not
+supported is using ``dlopen()`` to load a dynamic library that uses SafeStack into
+a program that is not compiled with SafeStack but uses threads.
+
+Signal handlers that use ``sigaltstack()`` must not use the unsafe stack (see
+``__attribute__((no_sanitize("safe-stack")))`` below).
+
+Programs that use APIs from ``ucontext.h`` are not supported yet.
+
+Usage
+=====
+
+To enable SafeStack, just pass ``-fsanitize=safe-stack`` flag to both compile and link
+command lines.
+
+Supported Platforms
+-------------------
+
+SafeStack was tested on Linux, FreeBSD and MacOSX.
+
+Low-level API
+-------------
+
+``__has_feature(safe_stack)``
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+In some rare cases one may need to execute different code depending on
+whether SafeStack is enabled. The macro ``__has_feature(safe_stack)`` can
+be used for this purpose.
+
+.. code-block:: c
+
+    #if __has_feature(safe_stack)
+    // code that builds only under SafeStack
+    #endif
+
+``__attribute__((no_sanitize("safe-stack")))``
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Use ``__attribute__((no_sanitize("safe-stack")))`` on a function declaration
+to specify that the safe stack instrumentation should not be applied to that
+function, even if enabled globally (see ``-fsanitize=safe-stack`` flag). This
+attribute may be required for functions that make assumptions about the
+exact layout of their stack frames.
+
+Care should be taken when using this attribute. The return address is not
+protected against stack buffer overflows, and it is easier to leak the
+address of the safe stack to memory by taking the address of a local variable.
+
+
+``__builtin___get_unsafe_stack_ptr()``
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+This builtin function returns current unsafe stack pointer of the current
+thread.
+
+``__builtin___get_unsafe_stack_start()``
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+This builtin function returns a pointer to the start of the unsafe stack of the
+current thread.
+
+Design
+======
+
+Please refer to
+`http://dslab.epfl.ch/proj/cpi/ <http://dslab.epfl.ch/proj/cpi/>`_ for more
+information about the design of the SafeStack and its related technologies.
+
+
+Publications
+------------
+
+`Code-Pointer Integrity <http://dslab.epfl.ch/pubs/cpi.pdf>`_.
+Volodymyr Kuznetsov, Laszlo Szekeres, Mathias Payer, George Candea, R. Sekar, Dawn Song.
+USENIX Symposium on Operating Systems Design and Implementation
+(`OSDI <https://www.usenix.org/conference/osdi14>`_), Broomfield, CO, October 2014

Modified: vendor/clang/dist/docs/UsersManual.rst
==============================================================================
--- vendor/clang/dist/docs/UsersManual.rst	Sun Jun 21 13:59:42 2015	(r284678)
+++ vendor/clang/dist/docs/UsersManual.rst	Sun Jun 21 14:00:56 2015	(r284679)
@@ -970,16 +970,15 @@ are listed below.
       includes all of the checks listed below other than
       ``unsigned-integer-overflow``.
 
-   -  ``-fsanitize=undefined-trap``: This includes all sanitizers
-      included by ``-fsanitize=undefined``, except those that require
-      runtime support. This group of sanitizers is intended to be
-      used in conjunction with the ``-fsanitize-undefined-trap-on-error``
-      flag. This includes all of the checks listed below other than
-      ``unsigned-integer-overflow`` and ``vptr``.
+   -  ``-fsanitize=undefined-trap``: This is a deprecated alias for
+      ``-fsanitize=undefined``.
+
    -  ``-fsanitize=dataflow``: :doc:`DataFlowSanitizer`, a general data
       flow analysis.
    -  ``-fsanitize=cfi``: :doc:`control flow integrity <ControlFlowIntegrity>`
-      checks. Implies ``-flto``.
+      checks. Requires ``-flto``.
+   -  ``-fsanitize=safe-stack``: :doc:`safe stack <SafeStack>`
+      protection against stack-based memory corruption errors.
 
    The following more fine-grained checks are also available:
 
@@ -992,13 +991,13 @@ are listed below.
    -  ``-fsanitize=cfi-cast-strict``: Enables :ref:`strict cast checks
       <cfi-strictness>`.
    -  ``-fsanitize=cfi-derived-cast``: Base-to-derived cast to the wrong
-      dynamic type. Implies ``-flto``.
+      dynamic type. Requires ``-flto``.
    -  ``-fsanitize=cfi-unrelated-cast``: Cast from ``void*`` or another
-      unrelated type to the wrong dynamic type. Implies ``-flto``.
+      unrelated type to the wrong dynamic type. Requires ``-flto``.
    -  ``-fsanitize=cfi-nvcall``: Non-virtual call via an object whose vptr is of
-      the wrong dynamic type. Implies ``-flto``.
+      the wrong dynamic type. Requires ``-flto``.
    -  ``-fsanitize=cfi-vcall``: Virtual call via an object whose vptr is of the
-      wrong dynamic type. Implies ``-flto``.
+      wrong dynamic type. Requires ``-flto``.
    -  ``-fsanitize=enum``: Load of a value of an enumerated type which
       is not in the range of representable values for that enumerated
       type.
@@ -1067,15 +1066,6 @@ are listed below.
       through. This mode may use extra memory in programs that copy
       uninitialized memory a lot.
 
-   Extra features of UndefinedBehaviorSanitizer:
-
-   -  ``-fsanitize-undefined-trap-on-error``: Causes traps to be emitted
-      rather than calls to runtime libraries when a problem is detected.
-      This option is intended for use in cases where the sanitizer runtime
-      cannot be used (for instance, when building libc or a kernel module).
-      This is only compatible with the sanitizers in the ``undefined-trap``
-      group.
-
    The ``-fsanitize=`` argument must also be provided when linking, in
    order to link to the appropriate runtime library. When using
    ``-fsanitize=vptr`` (or a group that includes it, such as
@@ -1099,11 +1089,41 @@ are listed below.
    sanitizers (e.g. :doc:`AddressSanitizer`) may not support recovery,
    and always crash the program after the issue is detected.
 
+   Note that the ``-fsanitize-trap`` flag has precedence over this flag.
+   This means that if a check has been configured to trap elsewhere on the
+   command line, or if the check traps by default, this flag will not have
+   any effect unless that sanitizer's trapping behavior is disabled with
+   ``-fno-sanitize-trap``.
+
+   For example, if a command line contains the flags ``-fsanitize=undefined
+   -fsanitize-trap=undefined``, the flag ``-fsanitize-recover=alignment``
+   will have no effect on its own; it will need to be accompanied by
+   ``-fno-sanitize-trap=alignment``.
+
+**-f[no-]sanitize-trap=check1,check2,...**
+
+   Controls which checks enabled by the ``-fsanitize=`` flag trap. This
+   option is intended for use in cases where the sanitizer runtime cannot
+   be used (for instance, when building libc or a kernel module), or where
+   the binary size increase caused by the sanitizer runtime is a concern.
+
+   This flag is only compatible with ``local-bounds``,
+   ``unsigned-integer-overflow``, sanitizers in the ``cfi`` group and
+   sanitizers in the ``undefined`` group other than ``vptr``. If this flag
+   is supplied together with ``-fsanitize=undefined``, the ``vptr`` sanitizer
+   will be implicitly disabled.
+
+   This flag is enabled by default for sanitizers in the ``cfi`` group.
+
 **-f[no-]sanitize-coverage=[type,features,...]**
 
    Enable simple code coverage in addition to certain sanitizers.
    See :doc:`SanitizerCoverage` for more details.
 
+.. option:: -fsanitize-undefined-trap-on-error
+
+   Deprecated alias for ``-fsanitize-trap=undefined``.
+
 .. option:: -fno-assume-sane-operator-new
 
    Don't assume that the C++'s new operator is sane.

Modified: vendor/clang/dist/docs/index.rst
==============================================================================
--- vendor/clang/dist/docs/index.rst	Sun Jun 21 13:59:42 2015	(r284678)
+++ vendor/clang/dist/docs/index.rst	Sun Jun 21 14:00:56 2015	(r284679)
@@ -29,6 +29,7 @@ Using Clang as a Compiler
    SanitizerCoverage
    SanitizerSpecialCaseList
    ControlFlowIntegrity
+   SafeStack
    Modules
    MSVCCompatibility
    FAQ

Modified: vendor/clang/dist/docs/tools/clang.pod
==============================================================================
--- vendor/clang/dist/docs/tools/clang.pod	Sun Jun 21 13:59:42 2015	(r284678)
+++ vendor/clang/dist/docs/tools/clang.pod	Sun Jun 21 14:00:56 2015	(r284679)
@@ -39,12 +39,12 @@ the other tools.
 This stage handles tokenization of the input source file, macro expansion,
 #include expansion and handling of other preprocessor directives.  The output of
 this stage is typically called a ".i" (for C), ".ii" (for C++), ".mi" (for 
-Objective-C) , or ".mii" (for Objective-C++) file.
+Objective-C), or ".mii" (for Objective-C++) file.
 
 =item B<Parsing and Semantic Analysis>
 
 This stage parses the input file, translating preprocessor tokens into a parse
-tree.  Once in the form of a parser tree, it applies semantic analysis to compute
+tree.  Once in the form of a parse tree, it applies semantic analysis to compute
 types for expressions as well and determine whether the code is well formed. This
 stage is responsible for generating most of the compiler warnings as well as
 parse errors.  The output of this stage is an "Abstract Syntax Tree" (AST).
@@ -330,13 +330,13 @@ all by the program.
 
 =item B<-fexceptions>
 
-Enable generation of unwind information, this allows exceptions to be thrown
+Enable generation of unwind information. This allows exceptions to be thrown
 through Clang compiled stack frames.  This is on by default in x86-64.
 
 =item B<-ftrapv>
 
 Generate code to catch integer overflow errors.  Signed integer overflow is
-undefined in C, with this flag, extra code is generated to detect this and abort
+undefined in C. With this flag, extra code is generated to detect this and abort
 when it happens.
 
 
@@ -389,7 +389,7 @@ Display available options.
 
 =item B<-Qunused-arguments>
 
-Don't emit warning for unused driver arguments.
+Do not emit any warnings for unused driver arguments.
 
 =item B<-Wa,>I<args>
 
@@ -578,7 +578,7 @@ write temporary files used during the co
 
 If this environment variable is present, it is treated as a delimited
 list of paths to be added to the default system include path list. The
-delimiter is the platform dependent delimitor, as used in the I<PATH>
+delimiter is the platform dependent delimiter, as used in the I<PATH>
 environment variable.
 
 Empty components in the environment variable are ignored.
@@ -592,7 +592,7 @@ which are only used when processing the 
 =item B<MACOSX_DEPLOYMENT_TARGET>
 
 If -mmacosx-version-min is unspecified, the default deployment target
-is read from this environment variable.  This option only affects darwin
+is read from this environment variable.  This option only affects Darwin
 targets.
 
 =back

Modified: vendor/clang/dist/include/clang-c/Index.h
==============================================================================
--- vendor/clang/dist/include/clang-c/Index.h	Sun Jun 21 13:59:42 2015	(r284678)
+++ vendor/clang/dist/include/clang-c/Index.h	Sun Jun 21 14:00:56 2015	(r284679)
@@ -2225,7 +2225,12 @@ enum CXCursorKind {
    */
   CXCursor_OMPTeamsDirective             = 253,
 
-  CXCursor_LastStmt                      = CXCursor_OMPTeamsDirective,
+  /** \brief OpenMP taskwait directive.
+   */
+  CXCursor_OMPTaskgroupDirective          = 254,
+
+
+  CXCursor_LastStmt                      = CXCursor_OMPTaskgroupDirective,
 
   /**
    * \brief Cursor that represents the translation unit itself.
@@ -5628,7 +5633,7 @@ typedef enum {
  * reused after indexing is finished. Set to \c NULL if you do not require it.
  *
  * \returns 0 on success or if there were errors from which the compiler could
- * recover.  If there is a failure from which the there is no recovery, returns
+ * recover.  If there is a failure from which there is no recovery, returns
  * a non-zero \c CXErrorCode.
  *
  * The rest of the parameters are the same as #clang_parseTranslationUnit.
@@ -5659,7 +5664,7 @@ CINDEX_LINKAGE int clang_indexSourceFile
  *
  * The parameters are the same as #clang_indexSourceFile.
  * 
- * \returns If there is a failure from which the there is no recovery, returns
+ * \returns If there is a failure from which there is no recovery, returns
  * non-zero, otherwise returns 0.
  */
 CINDEX_LINKAGE int clang_indexTranslationUnit(CXIndexAction,

Modified: vendor/clang/dist/include/clang/ARCMigrate/ARCMT.h
==============================================================================
--- vendor/clang/dist/include/clang/ARCMigrate/ARCMT.h	Sun Jun 21 13:59:42 2015	(r284678)
+++ vendor/clang/dist/include/clang/ARCMigrate/ARCMT.h	Sun Jun 21 14:00:56 2015	(r284679)
@@ -17,6 +17,7 @@
 namespace clang {
   class ASTContext;
   class DiagnosticConsumer;
+  class PCHContainerOperations;
 
 namespace arcmt {
   class MigrationPass;
@@ -37,19 +38,22 @@ namespace arcmt {
 /// the pre-migration ARC diagnostics.
 ///
 /// \returns false if no error is produced, true otherwise.
-bool checkForManualIssues(CompilerInvocation &CI,
-                          const FrontendInputFile &Input,
-                          DiagnosticConsumer *DiagClient,
-                          bool emitPremigrationARCErrors = false,
-                          StringRef plistOut = StringRef());
+bool
+checkForManualIssues(CompilerInvocation &CI, const FrontendInputFile &Input,
+                     std::shared_ptr<PCHContainerOperations> PCHContainerOps,
+                     DiagnosticConsumer *DiagClient,
+                     bool emitPremigrationARCErrors = false,
+                     StringRef plistOut = StringRef());
 
 /// \brief Works similar to checkForManualIssues but instead of checking, it
 /// applies automatic modifications to source files to conform to ARC.
 ///
 /// \returns false if no error is produced, true otherwise.
-bool applyTransformations(CompilerInvocation &origCI,
-                          const FrontendInputFile &Input,
-                          DiagnosticConsumer *DiagClient);
+bool
+applyTransformations(CompilerInvocation &origCI,
+                     const FrontendInputFile &Input,
+                     std::shared_ptr<PCHContainerOperations> PCHContainerOps,
+                     DiagnosticConsumer *DiagClient);
 
 /// \brief Applies automatic modifications and produces temporary files
 /// and metadata into the \p outputDir path.
@@ -62,12 +66,11 @@ bool applyTransformations(CompilerInvoca
 /// the pre-migration ARC diagnostics.
 ///
 /// \returns false if no error is produced, true otherwise.
-bool migrateWithTemporaryFiles(CompilerInvocation &origCI,
-                               const FrontendInputFile &Input,
-                               DiagnosticConsumer *DiagClient,
-                               StringRef outputDir,
-                               bool emitPremigrationARCErrors,
-                               StringRef plistOut);
+bool migrateWithTemporaryFiles(
+    CompilerInvocation &origCI, const FrontendInputFile &Input,
+    std::shared_ptr<PCHContainerOperations> PCHContainerOps,
+    DiagnosticConsumer *DiagClient, StringRef outputDir,
+    bool emitPremigrationARCErrors, StringRef plistOut);
 
 /// \brief Get the set of file remappings from the \p outputDir path that
 /// migrateWithTemporaryFiles produced.
@@ -93,13 +96,16 @@ std::vector<TransformFn> getAllTransform
 
 class MigrationProcess {
   CompilerInvocation OrigCI;
+  std::shared_ptr<PCHContainerOperations> PCHContainerOps;
   DiagnosticConsumer *DiagClient;
   FileRemapper Remapper;
 
 public:
   bool HadARCErrors;
 
-  MigrationProcess(const CompilerInvocation &CI, DiagnosticConsumer *diagClient,
+  MigrationProcess(const CompilerInvocation &CI,
+                   std::shared_ptr<PCHContainerOperations> PCHContainerOps,
+                   DiagnosticConsumer *diagClient,
                    StringRef outputDir = StringRef());
 
   class RewriteListener {

Modified: vendor/clang/dist/include/clang/AST/ASTContext.h
==============================================================================
--- vendor/clang/dist/include/clang/AST/ASTContext.h	Sun Jun 21 13:59:42 2015	(r284678)
+++ vendor/clang/dist/include/clang/AST/ASTContext.h	Sun Jun 21 14:00:56 2015	(r284679)
@@ -1854,6 +1854,36 @@ public:
            getCanonicalType(T2).getTypePtr();
   }
 
+  bool hasSameNullabilityTypeQualifier(QualType SubT, QualType SuperT,
+                                       bool IsParam) const {
+    auto SubTnullability = SubT->getNullability(*this);
+    auto SuperTnullability = SuperT->getNullability(*this);
+    if (SubTnullability.hasValue() == SuperTnullability.hasValue()) {
+      // Neither has nullability; return true
+      if (!SubTnullability)
+        return true;
+      // Both have nullability qualifier.
+      if (*SubTnullability == *SuperTnullability ||
+          *SubTnullability == NullabilityKind::Unspecified ||
+          *SuperTnullability == NullabilityKind::Unspecified)
+        return true;
+      
+      if (IsParam) {
+        // Ok for the superclass method parameter to be "nonnull" and the subclass
+        // method parameter to be "nullable"
+        return (*SuperTnullability == NullabilityKind::NonNull &&
+                *SubTnullability == NullabilityKind::Nullable);
+      }
+      else {
+        // For the return type, it's okay for the superclass method to specify
+        // "nullable" and the subclass method specify "nonnull"
+        return (*SuperTnullability == NullabilityKind::Nullable &&
+                *SubTnullability == NullabilityKind::NonNull);
+      }
+    }
+    return true;
+  }
+
   bool ObjCMethodsAreEqual(const ObjCMethodDecl *MethodDecl,
                            const ObjCMethodDecl *MethodImp);
   

Modified: vendor/clang/dist/include/clang/AST/CommentParser.h
==============================================================================
--- vendor/clang/dist/include/clang/AST/CommentParser.h	Sun Jun 21 13:59:42 2015	(r284678)
+++ vendor/clang/dist/include/clang/AST/CommentParser.h	Sun Jun 21 14:00:56 2015	(r284679)
@@ -75,11 +75,7 @@ class Parser {
       return;
 
     MoreLATokens.push_back(Tok);
-    for (const Token *I = &Toks.back(),
-         *B = &Toks.front();
-         I != B; --I) {
-      MoreLATokens.push_back(*I);
-    }
+    MoreLATokens.append(Toks.rbegin(), std::prev(Toks.rend()));
 
     Tok = Toks[0];
   }

Modified: vendor/clang/dist/include/clang/AST/DataRecursiveASTVisitor.h
==============================================================================
--- vendor/clang/dist/include/clang/AST/DataRecursiveASTVisitor.h	Sun Jun 21 13:59:42 2015	(r284678)
+++ vendor/clang/dist/include/clang/AST/DataRecursiveASTVisitor.h	Sun Jun 21 14:00:56 2015	(r284679)
@@ -531,10 +531,7 @@ bool RecursiveASTVisitor<Derived>::Trave
       }
     }
 
-    for (SmallVectorImpl<Stmt *>::reverse_iterator RI = StmtsToEnqueue.rbegin(),
-                                                   RE = StmtsToEnqueue.rend();
-         RI != RE; ++RI)
-      Queue.push_back(*RI);
+    Queue.append(StmtsToEnqueue.rbegin(), StmtsToEnqueue.rend());
   }
 
   return true;
@@ -2204,9 +2201,11 @@ DEF_TRAVERSE_STMT(CXXThisExpr, {})
 DEF_TRAVERSE_STMT(CXXThrowExpr, {})
 DEF_TRAVERSE_STMT(UserDefinedLiteral, {})
 DEF_TRAVERSE_STMT(DesignatedInitExpr, {})
+DEF_TRAVERSE_STMT(DesignatedInitUpdateExpr, {})
 DEF_TRAVERSE_STMT(ExtVectorElementExpr, {})
 DEF_TRAVERSE_STMT(GNUNullExpr, {})
 DEF_TRAVERSE_STMT(ImplicitValueInitExpr, {})
+DEF_TRAVERSE_STMT(NoInitExpr, {})
 DEF_TRAVERSE_STMT(ObjCBoolLiteralExpr, {})
 DEF_TRAVERSE_STMT(ObjCEncodeExpr, {
   if (TypeSourceInfo *TInfo = S->getEncodedTypeSourceInfo())
@@ -2356,6 +2355,9 @@ DEF_TRAVERSE_STMT(OMPBarrierDirective,
 DEF_TRAVERSE_STMT(OMPTaskwaitDirective,
                   { TRY_TO(TraverseOMPExecutableDirective(S)); })
 
+DEF_TRAVERSE_STMT(OMPTaskgroupDirective,
+                  { TRY_TO(TraverseOMPExecutableDirective(S)); })
+
 DEF_TRAVERSE_STMT(OMPFlushDirective,
                   { TRY_TO(TraverseOMPExecutableDirective(S)); })
 

Modified: vendor/clang/dist/include/clang/AST/DeclBase.h
==============================================================================
--- vendor/clang/dist/include/clang/AST/DeclBase.h	Sun Jun 21 13:59:42 2015	(r284678)
+++ vendor/clang/dist/include/clang/AST/DeclBase.h	Sun Jun 21 14:00:56 2015	(r284679)
@@ -178,7 +178,12 @@ public:
     OBJC_TQ_Out = 0x4,
     OBJC_TQ_Bycopy = 0x8,
     OBJC_TQ_Byref = 0x10,
-    OBJC_TQ_Oneway = 0x20
+    OBJC_TQ_Oneway = 0x20,
+
+    /// The nullability qualifier is set when the nullability of the
+    /// result or parameter was expressed via a context-sensitive
+    /// keyword.
+    OBJC_TQ_CSNullability = 0x40
   };
 
 protected:

Modified: vendor/clang/dist/include/clang/AST/DeclCXX.h
==============================================================================
--- vendor/clang/dist/include/clang/AST/DeclCXX.h	Sun Jun 21 13:59:42 2015	(r284678)
+++ vendor/clang/dist/include/clang/AST/DeclCXX.h	Sun Jun 21 14:00:56 2015	(r284679)
@@ -1440,7 +1440,7 @@ public:
   ///
   /// \returns true if this class is derived from \p Base, false otherwise.
   ///
-  /// \todo add a separate paramaeter to configure IsDerivedFrom, rather than
+  /// \todo add a separate parameter to configure IsDerivedFrom, rather than
   /// tangling input and output in \p Paths
   bool isDerivedFrom(const CXXRecordDecl *Base, CXXBasePaths &Paths) const;
 

Modified: vendor/clang/dist/include/clang/AST/DeclObjC.h
==============================================================================
--- vendor/clang/dist/include/clang/AST/DeclObjC.h	Sun Jun 21 13:59:42 2015	(r284678)
+++ vendor/clang/dist/include/clang/AST/DeclObjC.h	Sun Jun 21 14:00:56 2015	(r284679)
@@ -141,7 +141,7 @@ private:
 
   // NOTE: VC++ treats enums as signed, avoid using the ObjCDeclQualifier enum
   /// in, inout, etc.
-  unsigned objcDeclQualifier : 6;
+  unsigned objcDeclQualifier : 7;
 
   /// \brief Indicates whether this method has a related result type.
   unsigned RelatedResultType : 1;
@@ -2203,13 +2203,17 @@ public:
     OBJC_PR_atomic    = 0x100,
     OBJC_PR_weak      = 0x200,
     OBJC_PR_strong    = 0x400,
-    OBJC_PR_unsafe_unretained = 0x800
+    OBJC_PR_unsafe_unretained = 0x800,
+    /// Indicates that the nullability of the type was spelled with a
+    /// property attribute rather than a type qualifier.
+    OBJC_PR_nullability = 0x1000,
+    OBJC_PR_null_resettable = 0x2000
     // Adding a property should change NumPropertyAttrsBits
   };
 
   enum {
     /// \brief Number of bits fitting all the property attributes.
-    NumPropertyAttrsBits = 12
+    NumPropertyAttrsBits = 14
   };
 
   enum SetterKind { Assign, Retain, Copy, Weak };
@@ -2217,7 +2221,8 @@ public:
 private:
   SourceLocation AtLoc;   // location of \@property
   SourceLocation LParenLoc; // location of '(' starting attribute list or null.
-  TypeSourceInfo *DeclType;
+  QualType DeclType;
+  TypeSourceInfo *DeclTypeSourceInfo;
   unsigned PropertyAttributes : NumPropertyAttrsBits;
   unsigned PropertyAttributesAsWritten : NumPropertyAttrsBits;
   // \@required/\@optional
@@ -2232,12 +2237,13 @@ private:
 
   ObjCPropertyDecl(DeclContext *DC, SourceLocation L, IdentifierInfo *Id,
                    SourceLocation AtLocation,  SourceLocation LParenLocation,
-                   TypeSourceInfo *T)
+                   QualType T, TypeSourceInfo *TSI,
+                   PropertyControl propControl)
     : NamedDecl(ObjCProperty, DC, L, Id), AtLoc(AtLocation), 
-      LParenLoc(LParenLocation), DeclType(T),
+      LParenLoc(LParenLocation), DeclType(T), DeclTypeSourceInfo(TSI),
       PropertyAttributes(OBJC_PR_noattr),
       PropertyAttributesAsWritten(OBJC_PR_noattr),
-      PropertyImplementation(None),
+      PropertyImplementation(propControl),
       GetterName(Selector()),
       SetterName(Selector()),
       GetterMethodDecl(nullptr), SetterMethodDecl(nullptr),
@@ -2248,7 +2254,8 @@ public:
                                   SourceLocation L,
                                   IdentifierInfo *Id, SourceLocation AtLocation,
                                   SourceLocation LParenLocation,
-                                  TypeSourceInfo *T,
+                                  QualType T,
+                                  TypeSourceInfo *TSI,
                                   PropertyControl propControl = None);
   
   static ObjCPropertyDecl *CreateDeserialized(ASTContext &C, unsigned ID);
@@ -2259,9 +2266,14 @@ public:
   SourceLocation getLParenLoc() const { return LParenLoc; }
   void setLParenLoc(SourceLocation L) { LParenLoc = L; }
 
-  TypeSourceInfo *getTypeSourceInfo() const { return DeclType; }
-  QualType getType() const { return DeclType->getType(); }
-  void setType(TypeSourceInfo *T) { DeclType = T; }
+  TypeSourceInfo *getTypeSourceInfo() const { return DeclTypeSourceInfo; }
+
+  QualType getType() const { return DeclType; }
+
+  void setType(QualType T, TypeSourceInfo *TSI) { 
+    DeclType = T;
+    DeclTypeSourceInfo = TSI; 
+  }
 
   PropertyAttributeKind getPropertyAttributes() const {
     return PropertyAttributeKind(PropertyAttributes);

Modified: vendor/clang/dist/include/clang/AST/DeclTemplate.h
==============================================================================
--- vendor/clang/dist/include/clang/AST/DeclTemplate.h	Sun Jun 21 13:59:42 2015	(r284678)
+++ vendor/clang/dist/include/clang/AST/DeclTemplate.h	Sun Jun 21 14:00:56 2015	(r284679)
@@ -217,6 +217,88 @@ public:
   }
 };
 
+void *allocateDefaultArgStorageChain(const ASTContext &C);
+
+/// Storage for a default argument. This is conceptually either empty, or an
+/// argument value, or a pointer to a previous declaration that had a default
+/// argument.
+///
+/// However, this is complicated by modules: while we require all the default
+/// arguments for a template to be equivalent, there may be more than one, and
+/// we need to track all the originating parameters to determine if the default
+/// argument is visible.
+template<typename ParmDecl, typename ArgType>
+class DefaultArgStorage {
+  /// Storage for both the value *and* another parameter from which we inherit
+  /// the default argument. This is used when multiple default arguments for a
+  /// parameter are merged together from different modules.
+  struct Chain {
+    ParmDecl *PrevDeclWithDefaultArg;
+    ArgType Value;
+  };
+  static_assert(sizeof(Chain) == sizeof(void *) * 2,
+                "non-pointer argument type?");
+
+  llvm::PointerUnion3<ArgType, ParmDecl*, Chain*> ValueOrInherited;
+
+  static ParmDecl *getParmOwningDefaultArg(ParmDecl *Parm) {
+    const DefaultArgStorage &Storage = Parm->getDefaultArgStorage();
+    if (auto *Prev = Storage.ValueOrInherited.template dyn_cast<ParmDecl*>())
+      Parm = Prev;
+    assert(!Parm->getDefaultArgStorage()
+                .ValueOrInherited.template is<ParmDecl *>() &&
+           "should only be one level of indirection");
+    return Parm;
+  }
+
+public:
+  DefaultArgStorage() : ValueOrInherited(ArgType()) {}
+
+  /// Determine whether there is a default argument for this parameter.
+  bool isSet() const { return !ValueOrInherited.isNull(); }
+  /// Determine whether the default argument for this parameter was inherited
+  /// from a previous declaration of the same entity.
+  bool isInherited() const { return ValueOrInherited.template is<ParmDecl*>(); }
+  /// Get the default argument's value. This does not consider whether the
+  /// default argument is visible.
+  ArgType get() const {
+    const DefaultArgStorage *Storage = this;
+    if (auto *Prev = ValueOrInherited.template dyn_cast<ParmDecl*>())
+      Storage = &Prev->getDefaultArgStorage();
+    if (auto *C = Storage->ValueOrInherited.template dyn_cast<Chain*>())
+      return C->Value;
+    return Storage->ValueOrInherited.template get<ArgType>();
+  }
+  /// Get the parameter from which we inherit the default argument, if any.
+  /// This is the parameter on which the default argument was actually written.
+  const ParmDecl *getInheritedFrom() const {
+    if (auto *D = ValueOrInherited.template dyn_cast<ParmDecl*>())
+      return D;
+    if (auto *C = ValueOrInherited.template dyn_cast<Chain*>())
+      return C->PrevDeclWithDefaultArg;
+    return nullptr;
+  }
+  /// Set the default argument.
+  void set(ArgType Arg) {
+    assert(!isSet() && "default argument already set");
+    ValueOrInherited = Arg;
+  }
+  /// Set that the default argument was inherited from another parameter.
+  void setInherited(const ASTContext &C, ParmDecl *InheritedFrom) {
+    assert(!isInherited() && "default argument already inherited");
+    InheritedFrom = getParmOwningDefaultArg(InheritedFrom);
+    if (!isSet())
+      ValueOrInherited = InheritedFrom;
+    else
+      ValueOrInherited = new (allocateDefaultArgStorageChain(C))
+          Chain{InheritedFrom, ValueOrInherited.template get<ArgType>()};
+  }
+  /// Remove the default argument, even if it was inherited.
+  void clear() {
+    ValueOrInherited = ArgType();
+  }
+};
+
 //===----------------------------------------------------------------------===//
 // Kinds of Templates
 //===----------------------------------------------------------------------===//
@@ -942,18 +1024,16 @@ class TemplateTypeParmDecl : public Type
   /// If false, it was declared with the 'class' keyword.
   bool Typename : 1;
 
-  /// \brief Whether this template type parameter inherited its
-  /// default argument.
-  bool InheritedDefault : 1;
-
   /// \brief The default template argument, if any.
-  TypeSourceInfo *DefaultArgument;
+  typedef DefaultArgStorage<TemplateTypeParmDecl, TypeSourceInfo *>
+      DefArgStorage;
+  DefArgStorage DefaultArgument;
 
   TemplateTypeParmDecl(DeclContext *DC, SourceLocation KeyLoc,
                        SourceLocation IdLoc, IdentifierInfo *Id,
                        bool Typename)
     : TypeDecl(TemplateTypeParm, DC, IdLoc, Id, KeyLoc), Typename(Typename),
-      InheritedDefault(false), DefaultArgument() { }
+      DefaultArgument() { }
 
   /// Sema creates these on the stack during auto type deduction.
   friend class Sema;
@@ -974,35 +1054,45 @@ public:
   /// If not, it was declared with the 'class' keyword.
   bool wasDeclaredWithTypename() const { return Typename; }
 
+  const DefArgStorage &getDefaultArgStorage() const { return DefaultArgument; }
+
   /// \brief Determine whether this template parameter has a default
   /// argument.
-  bool hasDefaultArgument() const { return DefaultArgument != nullptr; }
+  bool hasDefaultArgument() const { return DefaultArgument.isSet(); }
 
   /// \brief Retrieve the default argument, if any.
-  QualType getDefaultArgument() const { return DefaultArgument->getType(); }
+  QualType getDefaultArgument() const {
+    return DefaultArgument.get()->getType();
+  }
 
   /// \brief Retrieves the default argument's source information, if any.
-  TypeSourceInfo *getDefaultArgumentInfo() const { return DefaultArgument; }
+  TypeSourceInfo *getDefaultArgumentInfo() const {
+    return DefaultArgument.get();
+  }
 
   /// \brief Retrieves the location of the default argument declaration.
   SourceLocation getDefaultArgumentLoc() const;
 
   /// \brief Determines whether the default argument was inherited
   /// from a previous declaration of this template.
-  bool defaultArgumentWasInherited() const { return InheritedDefault; }
+  bool defaultArgumentWasInherited() const {
+    return DefaultArgument.isInherited();
+  }
 
-  /// \brief Set the default argument for this template parameter, and
-  /// whether that default argument was inherited from another
-  /// declaration.
-  void setDefaultArgument(TypeSourceInfo *DefArg, bool Inherited) {
-    DefaultArgument = DefArg;
-    InheritedDefault = Inherited;
+  /// \brief Set the default argument for this template parameter.
+  void setDefaultArgument(TypeSourceInfo *DefArg) {
+    DefaultArgument.set(DefArg);
+  }
+  /// \brief Set that this default argument was inherited from another
+  /// parameter.
+  void setInheritedDefaultArgument(const ASTContext &C,
+                                   TemplateTypeParmDecl *Prev) {
+    DefaultArgument.setInherited(C, Prev);

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201506211400.t5LE0wm8071753>