Joe Groff
595e0e4ede
Merge branch 'master' into keypaths
2017-04-19 18:38:24 -07:00
swift-ci
837f2573fa
Merge remote-tracking branch 'origin/master' into master-next
2017-04-19 13:28:31 -07:00
Slava Pestov
53305f1e58
Merge pull request #8847 from slavapestov/subclass-existentials-clang-importer
...
ClangImporter: Support for subclass existentials
2017-04-19 13:27:02 -07:00
swift-ci
edf0e6ed66
Merge remote-tracking branch 'origin/master' into master-next
2017-04-19 11:28:45 -07:00
Graydon Hoare
6a94c9fb9e
Merge pull request #8735 from graydon/rdar-30959593-operators-defeat-incrementality
...
Attribute @_implements & deriving enum equality not-named ==
2017-04-19 11:18:55 -07:00
Doug Gregor
e48f4191ca
[GSB] Add EquivalenceClass::dump(). NFC
2017-04-19 08:42:05 -07:00
Slava Pestov
57b2c059db
Serialization: Fix serialization of layout constraints
2017-04-19 00:52:14 -07:00
swift-ci
a38445389f
Merge remote-tracking branch 'origin/master' into master-next
2017-04-19 00:08:33 -07:00
swift-ci
504b6f2a55
Merge pull request #8852 from DougGregor/protocol-conformance-cleanups
2017-04-19 00:05:06 -07:00
Doug Gregor
8584e97408
[AST] Sink ProtocolConformance::getWitness() down into NormalProtocolConformance.
...
NormalProtocolConformance has the only correct implementation of this
functionality. Instead, providing a safer getWitnessDecl() that
doesn't promise substitutions that are incorrect (and not actually
used by any clients).
2017-04-18 23:35:24 -07:00
Graydon Hoare
e6027eeb4e
Derive @_implements(Equatable, ==(_:_:)) _DerivedEnumEquals, not func==.
2017-04-18 23:21:44 -07:00
Graydon Hoare
c25210f6eb
Move IsUserAccessible bit from VarDecl up to ValueDecl (and adjust bits).
2017-04-18 23:21:43 -07:00
Joe Groff
a6cd471c2b
IRGen/stdlib: Instantiate non-generic computed key path components.
2017-04-18 21:51:12 -07:00
swift-ci
d4ee5691fd
Merge remote-tracking branch 'origin/master' into master-next
2017-04-18 18:28:31 -07:00
swift-ci
6eb7c0dbf5
Merge pull request #8853 from devincoughlin/swap-suppression-flag
2017-04-18 18:10:30 -07:00
Devin Coughlin
ae3b13ed2d
[Exclusivity] Put suppression for free function swap() behind a flag
...
And leave suppression off by default for now. We'll use this to evaluate
how often swap() causes exclusivity conflicts to be reported.
2017-04-18 17:21:53 -07:00
Doug Gregor
8e2709a10f
Remove a FIXME and comment that is simply no longer true
2017-04-18 17:17:31 -07:00
Doug Gregor
d9af96ffe4
[AST] Remove more interface-type redundancy from ProtocolConformance.
2017-04-18 17:15:15 -07:00
Doug Gregor
4da11aab58
[AST] Teach SpecializedProtocolConformance to profile its substitutions.
...
Otherwise, we could theoretically get collisions, although they are
quite unlikely to matter in practice.
2017-04-18 17:15:15 -07:00
Doug Gregor
ebdd56a1f0
[AST] Eliminate the "interface type" from protocol conformances.
...
We don't need this notion.
2017-04-18 17:15:15 -07:00
swift-ci
8b5ed16f83
Merge remote-tracking branch 'origin/master' into master-next
2017-04-18 16:48:30 -07:00
swift-ci
7b1ab7c327
Merge pull request #8848 from DougGregor/gsb-protocol-req-query
2017-04-18 16:31:31 -07:00
swift-ci
000387aa9e
Merge remote-tracking branch 'origin/master' into master-next
2017-04-18 16:28:31 -07:00
swift-ci
30719c8379
Merge pull request #8846 from practicalswift/gardening-20170418b
2017-04-18 16:21:07 -07:00
Doug Gregor
98dbd23fe2
[GSB] Add RequirementSource::isProtocolRequirement() to check both protocol-requirement kinds.
...
It’s too easy to forget to check both ProtocolRequirement and InferredProtocolRequirement, so abstract the check into a method.
2017-04-18 15:47:40 -07:00
swift-ci
3453ae878b
Merge remote-tracking branch 'origin/master' into master-next
2017-04-18 15:28:40 -07:00
Xi Ge
acf4f6e27e
[Migrator] Add stubs for API change data files. ( #8844 )
...
These data files are installed into runtime resource directory so that migrator can pick them automatically according to specific platforms. To support testing, a front-end option -api-diff-data-file can be used to specify the data file to use and it will overwrite the default ones from resource directory.
2017-04-18 15:20:57 -07:00
practicalswift
f48204dcdf
[gardening] Fix a-vs-an typo.
2017-04-18 23:22:13 +02:00
swift-ci
4a9a70f495
Merge remote-tracking branch 'origin/master' into master-next
2017-04-18 14:08:30 -07:00
practicalswift
a41a501c56
Merge pull request #8835 from practicalswift/gardening-20170418
...
[gardening] Fix URLs. Fix spacing. Remove unused methods. Fix headers.
2017-04-18 22:59:00 +02:00
swift-ci
7377d28f49
Merge remote-tracking branch 'origin/master' into master-next
2017-04-18 13:08:31 -07:00
swift-ci
6d35d32503
Merge pull request #8838 from DougGregor/serialize-objc-lookup-name
2017-04-18 12:51:29 -07:00
Doug Gregor
f6f547469d
[Serialization] Filter Objective-C methods by mangled name rather than type ID.
...
Module files store all of the Objective-C method entrypoints in a
central table indexed by selector, then filter the results based on
the specific class being requested. Rather than storing the class as
a TypeID---which requires a bunch of deserialization---store its
mangled name. This allows us to deserialize less, and causes circular
deserialization in rdar://problem/31615640.
2017-04-18 11:53:17 -07:00
Joe Groff
4522cd09aa
SILGen: Tweak key path computed property lowering to produce a consistent runtime-callable ABI.
2017-04-18 11:44:39 -07:00
Graydon Hoare
db515885f8
Typecheck contents of @_implements attribute.
2017-04-18 11:12:54 -07:00
Graydon Hoare
3d5c995615
Parse @_implements(Proto, DeclName)
2017-04-18 11:12:54 -07:00
Graydon Hoare
4d9ea18e59
Add mode to Parser::parseUnqualifiedDeclName for 0-arg compound names.
2017-04-18 11:12:54 -07:00
Graydon Hoare
e191b92966
Add mode to Parser::parseUnqualifiedDeclName to handle operator BaseNames.
2017-04-18 11:12:54 -07:00
Graydon Hoare
c71295a12a
Add @_implements decl attribute.
2017-04-18 11:12:53 -07:00
Graydon Hoare
3a79d83233
Forward declare TypeRepr in TypeLoc.h, adjust other code to compensate.
2017-04-18 11:12:53 -07:00
swift-ci
ae1eb1197c
Merge remote-tracking branch 'origin/master' into master-next
2017-04-18 11:08:33 -07:00
Huon Wilson
53b4e7044f
Merge pull request #8822 from huonw/symbol-list-5
...
Yet more TBDGen work: mostly classes.
2017-04-18 11:04:57 -07:00
John McCall
7a4c761426
Merge pull request #8821 from rjmccall/dynamic-enforcement-vol-1
...
Basic dynamic enforcement of exclusivity
2017-04-18 13:57:54 -04:00
practicalswift
a029589093
[gardening] Use consistent headers
2017-04-18 19:51:08 +02:00
swift-ci
3098fc666a
Merge remote-tracking branch 'origin/master' into master-next
2017-04-18 10:28:41 -07:00
practicalswift
b6ce00a012
Merge pull request #8832 from practicalswift/typos-20170418
...
[gardening] Fix 100 typos.
2017-04-18 19:13:31 +02:00
swift-ci
6d83ea5b8f
Merge remote-tracking branch 'origin/master' into master-next
2017-04-18 09:48:31 -07:00
John McCall
6c16cfaa14
Implement a basic dynamic-enforcement runtime and teach IRGen to use it.
2017-04-18 11:23:43 -04:00
practicalswift
7eb7d5b109
[gardening] Fix 100 typos.
2017-04-18 17:01:42 +02:00
Doug Gregor
54f132c487
[GSB] Delete all of the "visited" sets, which are now unused.
...
Now that we detect recursion based on repetition within the potential
archetypes, we no longer rely on passing down "visited" sets to
detect/diagnose recursion. Remove them.
2017-04-17 23:13:21 -07:00