{"push_id":1157150239,"size":37,"distinct_size":37,"ref":"refs/heads/master","head":"011e306fe826b4368fa05b99b08080f1605f1630","before":"af1defcd620b94e0a6d0ece887d1e179ace94b97","commits":[{"sha":"2ed349c165b4c2a3ff8e4fff991562d637b1bb29","author":{"name":"Brian Gesiak","email":"0c09f9ac95ab928573a6428d24847856289273b0@gmail.com"},"message":"[SR-1639][SourceKit] Link SwiftLang libraries to sourcekitd\n\nWhen building SourceKit on Linux, sourcekitdAPI would not be linked to\nSourceKitSwiftLang, which caused the following symbols to be undefined:\n\n- `SourceKit::LangSupport::SynthesizedUSRSeparator`\n- `SourceKit::LangSupport::createSwiftLangSupport(SourceKit::Context&)`\n\nLink SourceKitSwiftLang to resolve these symbols.","distinct":true,"url":"https://api.github.com/repos/austinzheng/swift/commits/2ed349c165b4c2a3ff8e4fff991562d637b1bb29"},{"sha":"0154875f81fcf46d8e96460928154b9fa6519fe3","author":{"name":"Brian Gesiak","email":"0c09f9ac95ab928573a6428d24847856289273b0@gmail.com"},"message":"[SourceKit] Update sourcekitd-test request types\n\nThe error message doesn't list all the possible request types that are\nsupported. For now, update the error message.","distinct":true,"url":"https://api.github.com/repos/austinzheng/swift/commits/0154875f81fcf46d8e96460928154b9fa6519fe3"},{"sha":"f7deb79dcb40d4437e8198a3d327a995913ad502","author":{"name":"practicalswift","email":"7bc8dfe66114fb97ee9aed052bc05e17800b570f@users.noreply.github.com"},"message":"[gardening] Remove addObjCClassRecord()\n\nThe last in-repo usage was removed in 97fd1a741105cfae7625068ea35795ff66a66dce","distinct":true,"url":"https://api.github.com/repos/austinzheng/swift/commits/f7deb79dcb40d4437e8198a3d327a995913ad502"},{"sha":"5b0e450b16c6456eab25dba85a8e8f86b9b82fd9","author":{"name":"practicalswift","email":"7bc8dfe66114fb97ee9aed052bc05e17800b570f@users.noreply.github.com"},"message":"[gardening] Remove HasAnyDecls()\n\nThe last in-repo usage was removed in 6328f3f","distinct":true,"url":"https://api.github.com/repos/austinzheng/swift/commits/5b0e450b16c6456eab25dba85a8e8f86b9b82fd9"},{"sha":"9823d16a36b5d1bcc05e4e9f950fe0ad33a15b63","author":{"name":"Slava Pestov","email":"9e16c7b0af09ed5751f270a67048f3177998c735@apple.com"},"message":"AST: Fix Decl::getInnermostDeclContext()\n\nThis wasn't doing the right thing for TypeAliasDecls. NFC for now,\nbut exposed by some other changes I am working on.","distinct":true,"url":"https://api.github.com/repos/austinzheng/swift/commits/9823d16a36b5d1bcc05e4e9f950fe0ad33a15b63"},{"sha":"e8abf54a9a08635af8e4b46096b20eebd277503c","author":{"name":"Slava Pestov","email":"9e16c7b0af09ed5751f270a67048f3177998c735@apple.com"},"message":"Sema: Fixes for protocol typealiases\n\nThis is a big refactoring of resolveTypeInContext() which makes\nthe function clearer to understand by merging various special\ncases and generalizing the logic for walking parent and superclass\ncontexts to cover more cases.\n\nThis improves typealiases in protocols a bit:\n\n1) Previously a typealias in a protocol either had to be concrete,\n   or consist of a single path of member types from Self, eg\n   Self.A.B. Lift this restriction, so we can now write things like\n\nprotocol Fireworks {\n  associatedtype Exploding\n  typealias Exploder = Exploding -> [Exploding]\n}\n\n2) Protocol typealiases can now be accessed via qualified lookup\n   on concrete types. Getting this working for unqualified lookup\n   requires further refactorings which will be in a subsequent\n   patch.","distinct":true,"url":"https://api.github.com/repos/austinzheng/swift/commits/e8abf54a9a08635af8e4b46096b20eebd277503c"},{"sha":"5e2f7c9cc601a2500163379e5cf112e26edb7910","author":{"name":"Slava Pestov","email":"9e16c7b0af09ed5751f270a67048f3177998c735@apple.com"},"message":"Sema: Harden 'for ... in ...' with existential type\n\nAvoid calling lookupMemberType() with an existential base\naltogether.\n\nWith the previous resolveTypeInContext() patch, a compiler_crasher\nregressed and hit this, because the behavior of lookupMemberType()\nchanged to return nullptr in fewer cases.","distinct":true,"url":"https://api.github.com/repos/austinzheng/swift/commits/5e2f7c9cc601a2500163379e5cf112e26edb7910"},{"sha":"31272643768e1f808e2823cfdc494dbd038f7c15","author":{"name":"Slava Pestov","email":"9e16c7b0af09ed5751f270a67048f3177998c735@apple.com"},"message":"AST: When performing qualified lookup of a member type, filter out non-types earlier\n\nWith the previous resolveTypeInContext() patch, a few compiler\ncrashers regressed with this problem, presumably because we were now\nperforming lookups in more contexts than before.\n\nThis is a class of problems where we would attempt a recursive\nvalidation:\n\n1) Generic signature validation begins for type T\n2) Name lookup in type context finds a non-type declaration D nested in T\n3) Generic signature validation begins for D\n4) The outer generic context of D is T, but T doesn't have a generic\n   signature yet\n\nThe right way to break such cycles is to implement the iterative\ndecl checker design. However when the recursion is via name lookup,\nwe can try to avoid the problem in the first place by not validating\nnon-type declarations if the client requested a type-only lookup.\n\nNote that there is a small semantic change here, where programs that\nwere previously rejected as invalid because of name clashes are\nnow valid. It is arguable if we want to allow stuff like this or not:\n\nclass A {\n  func A(a: A) {}\n}\n\nor\n\nclass Case {}\nenum Foo {\n  case Case(Case)\n}\n\nHowever at the very least, the new behavior is better because it\ngives us an opportunity to add a diagnostic in the right place\nlater. The old diagnostics were not very good, for example the\nsecond example just yields \"use of undeclared type 'Case'\".\nIn other examples, the undeclared type diagnostic would come up\nmultiple times, or we would generate a cryptic \"type 'A' used within\nits own definition\".\n\nAs far as I understand, this should not change behavior of any existing\nvalid code.","distinct":true,"url":"https://api.github.com/repos/austinzheng/swift/commits/31272643768e1f808e2823cfdc494dbd038f7c15"},{"sha":"08d5e29ca28db66afbe458b6ed0c8c011b6741b3","author":{"name":"Slava Pestov","email":"9e16c7b0af09ed5751f270a67048f3177998c735@apple.com"},"message":"This test no longer crashes after previous patches","distinct":true,"url":"https://api.github.com/repos/austinzheng/swift/commits/08d5e29ca28db66afbe458b6ed0c8c011b6741b3"},{"sha":"78b38cdcac39feb613a6cb3b1a80fc460a3324b9","author":{"name":"swift-ci","email":"ba4463bdeeb747bfa14a6c06d0b8d74a99982bde@users.noreply.github.com"},"message":"Merge pull request #2992 from slavapestov/protocol-typealias-fixes","distinct":true,"url":"https://api.github.com/repos/austinzheng/swift/commits/78b38cdcac39feb613a6cb3b1a80fc460a3324b9"},{"sha":"eeff0e6e4acb1c2177499025749470d57dc80b05","author":{"name":"swift-ci","email":"ba4463bdeeb747bfa14a6c06d0b8d74a99982bde@users.noreply.github.com"},"message":"Merge pull request #2936 from practicalswift/remove-HasAnyDecls","distinct":true,"url":"https://api.github.com/repos/austinzheng/swift/commits/eeff0e6e4acb1c2177499025749470d57dc80b05"},{"sha":"8bdffb98339e3c957d7d7f50330c9497ec51c950","author":{"name":"swift-ci","email":"ba4463bdeeb747bfa14a6c06d0b8d74a99982bde@users.noreply.github.com"},"message":"Merge pull request #2934 from practicalswift/remove-addObjCClassRecord","distinct":true,"url":"https://api.github.com/repos/austinzheng/swift/commits/8bdffb98339e3c957d7d7f50330c9497ec51c950"},{"sha":"46ae21513f5f4c2d26c4332b3786872558ca31cd","author":{"name":"practicalswift","email":"7bc8dfe66114fb97ee9aed052bc05e17800b570f@users.noreply.github.com"},"message":"[swiftc] Add test case for crash triggered in swift::TypeChecker::checkGenericParamList(swift::ArchetypeBuilder*, swift::GenericParamList*, swift::GenericSignature*, bool, swift::GenericTypeResolver*)\n\nStack trace:\n\n```\n4  swift           0x0000000000ed89bd swift::TypeChecker::checkGenericParamList(swift::ArchetypeBuilder*, swift::GenericParamList*, swift::GenericSignature*, bool, swift::GenericTypeResolver*) + 93\n6  swift           0x0000000000ed90de swift::TypeChecker::validateGenericFuncSignature(swift::AbstractFunctionDecl*) + 94\n9  swift           0x0000000000e9b741 swift::TypeChecker::validateDecl(swift::ValueDecl*, bool) + 1089\n10 swift           0x00000000010f587c swift::DeclContext::lookupQualified(swift::Type, swift::DeclName, swift::NLOptions, swift::LazyResolver*, llvm::SmallVectorImpl<swift::ValueDecl*>&) const + 2652\n11 swift           0x0000000000edcf37 swift::TypeChecker::lookupMemberType(swift::DeclContext*, swift::Type, swift::Identifier, swift::OptionSet<swift::NameLookupFlags, unsigned int>) + 295\n13 swift           0x0000000000f0d47e swift::TypeChecker::resolveIdentifierType(swift::DeclContext*, swift::IdentTypeRepr*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, bool, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 158\n15 swift           0x0000000000f0e554 swift::TypeChecker::resolveType(swift::TypeRepr*, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 164\n16 swift           0x0000000000f0d370 swift::TypeChecker::validateType(swift::TypeLoc&, swift::DeclContext*, swift::OptionSet<swift::TypeResolutionFlags, unsigned int>, swift::GenericTypeResolver*, llvm::function_ref<bool (swift::TypeCheckRequest)>*) + 192\n17 swift           0x0000000000e9953a swift::TypeChecker::checkInheritanceClause(swift::Decl*, swift::GenericTypeResolver*) + 5370\n18 swift           0x0000000000e9b50f swift::TypeChecker::validateDecl(swift::ValueDecl*, bool) + 527\n21 swift           0x0000000000ea0c86 swift::TypeChecker::typeCheckDecl(swift::Decl*, bool) + 150\n24 swift           0x0000000000f060aa swift::TypeChecker::typeCheckFunctionBodyUntil(swift::FuncDecl*, swift::SourceLoc) + 346\n25 swift           0x0000000000f05f0e swift::TypeChecker::typeCheckAbstractFunctionBodyUntil(swift::AbstractFunctionDecl*, swift::SourceLoc) + 46\n26 swift           0x0000000000f06ad3 swift::TypeChecker::typeCheckAbstractFunctionBody(swift::AbstractFunctionDecl*) + 179\n28 swift           0x0000000000ec3761 swift::performTypeChecking(swift::SourceFile&, swift::TopLevelContext&, swift::OptionSet<swift::TypeCheckingFlags, unsigned int>, unsigned int, unsigned int) + 1281\n29 swift           0x0000000000c58169 swift::CompilerInstance::performSema() + 3289\n31 swift           0x00000000007d7499 swift::performFrontend(llvm::ArrayRef<char const*>, char const*, void*, swift::FrontendObserver*) + 2857\n32 swift           0x00000000007a34b8 main + 2872\nStack dump:\n0.\tProgram arguments: /path/to/swift/bin/swift -frontend -c -primary-file validation-test/compiler_crashers/28312-swift-typechecker-checkgenericparamlist.swift -target x86_64-unknown-linux-gnu -disable-objc-interop -module-name main -o /tmp/28312-swift-typechecker-checkgenericparamlist-dcf2e2.o\n1.\tWhile type-checking getter for w at validation-test/compiler_crashers/28312-swift-typechecker-checkgenericparamlist.swift:10:6\n2.\tWhile type-checking 'c' at validation-test/compiler_crashers/28312-swift-typechecker-checkgenericparamlist.swift:10:7\n3.\tWhile resolving type A.b at [validation-test/compiler_crashers/28312-swift-typechecker-checkgenericparamlist.swift:10:15 - line:10:17] RangeText=\"A.b\"\n4.\tWhile type-checking 'b' at validation-test/compiler_crashers/28312-swift-typechecker-checkgenericparamlist.swift:10:27\n<unknown>:0: error: unable to execute command: Segmentation fault\n<unknown>:0: error: compile command failed due to signal (use -v to see invocation)\n```","distinct":true,"url":"https://api.github.com/repos/austinzheng/swift/commits/46ae21513f5f4c2d26c4332b3786872558ca31cd"},{"sha":"1bf2a27d4aea1ce700d23976870730819bb3ff68","author":{"name":"practicalswift","email":"7bc8dfe66114fb97ee9aed052bc05e17800b570f@users.noreply.github.com"},"message":"[gardening] Remove HasAnyTypes()\n\nThe last in-repo usage was removed in 6328f3fe0b00cf07a81b76551f0852a861bbc467","distinct":true,"url":"https://api.github.com/repos/austinzheng/swift/commits/1bf2a27d4aea1ce700d23976870730819bb3ff68"},{"sha":"20360d70742e7dd2ff2865d14734e6c4059fc4e1","author":{"name":"practicalswift","email":"7bc8dfe66114fb97ee9aed052bc05e17800b570f@users.noreply.github.com"},"message":"Merge pull request #2935 from practicalswift/remove-HasAnyTypes\n\n[gardening] Remove HasAnyTypes()","distinct":true,"url":"https://api.github.com/repos/austinzheng/swift/commits/20360d70742e7dd2ff2865d14734e6c4059fc4e1"},{"sha":"c74273dfd119292ef466b04e618e06487a5bde8a","author":{"name":"practicalswift","email":"7bc8dfe66114fb97ee9aed052bc05e17800b570f@users.noreply.github.com"},"message":"[gardening] Remove \"-*- swift -*-\" from non-.gyb file.","distinct":true,"url":"https://api.github.com/repos/austinzheng/swift/commits/c74273dfd119292ef466b04e618e06487a5bde8a"},{"sha":"51b2ba6a08c2e35ffa84807b78e1b510ec8cd097","author":{"name":"practicalswift","email":"7bc8dfe66114fb97ee9aed052bc05e17800b570f@users.noreply.github.com"},"message":"Merge pull request #2997 from practicalswift/remove-swift-marker-for-non-gyb-file\n\n[gardening] Remove \"-*- swift -*-\" from non-.gyb file.","distinct":true,"url":"https://api.github.com/repos/austinzheng/swift/commits/51b2ba6a08c2e35ffa84807b78e1b510ec8cd097"},{"sha":"2edcdf35eeb860916a4c1d9538c17e1125cf5caf","author":{"name":"practicalswift","email":"7bc8dfe66114fb97ee9aed052bc05e17800b570f@users.noreply.github.com"},"message":"[gardening] Minor bash cleanups.","distinct":true,"url":"https://api.github.com/repos/austinzheng/swift/commits/2edcdf35eeb860916a4c1d9538c17e1125cf5caf"},{"sha":"b7cbfd11c5c72ad9ef84fb60817b910f79d1e764","author":{"name":"practicalswift","email":"7bc8dfe66114fb97ee9aed052bc05e17800b570f@users.noreply.github.com"},"message":"Merge pull request #2996 from practicalswift/swiftc-28312-swift-typechecker-checkgenericparamlist\n\n[swiftc] Add test case for crash triggered in swift::TypeChecker::checkGenericParamList(…)","distinct":true,"url":"https://api.github.com/repos/austinzheng/swift/commits/b7cbfd11c5c72ad9ef84fb60817b910f79d1e764"},{"sha":"2807a17eb894f7e24af7c26ccbe090e0ed446bb9","author":{"name":"Doug Gregor","email":"251fda27d0a603ec7038aeb3aa510e8fbf5b9bc1@apple.com"},"message":"[Type checker SR-899] Warning on missing \".self\" for single-parameter functions.\n\nDue to a modeling error in the type checker's folding of type\nreferences into type expressions, code such as \"strideof(Int)\" would\nbe accepted without the required \".self\". Commit\n4a60b6cbf4fa2a410aebf7f725865395c99ef6ca fixes the modeling issue but\nleft the historical accepts-invalid; now, diagnose these cases with a\nwarning + Fix-It to ease the transition.\n\nFixes SR-899.","distinct":true,"url":"https://api.github.com/repos/austinzheng/swift/commits/2807a17eb894f7e24af7c26ccbe090e0ed446bb9"}]}
{"actor":{"display_login":"austinzheng"}}