Commit Graph

2350 Commits

Author SHA1 Message Date
swift-ci
75c8296c99 Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-02-13 13:57:59 -08:00
swift-ci
29823d71c1 Merge remote-tracking branch 'origin/master' into master-next 2018-02-13 13:49:31 -08:00
Xi Ge
e970fbe2ff sourcekitd: introduce all sourcekit UIDs to the swift client library. NFC (#14600) 2018-02-13 13:44:08 -08:00
swift-ci
58ba0b5d6f Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-02-13 12:38:05 -08:00
swift-ci
9f828c0652 Merge remote-tracking branch 'origin/master' into master-next 2018-02-13 12:29:49 -08:00
Huon Wilson
56cf07752d Merge pull request #14554 from huonw/doc-conditional-conformances
[IDE] Teach type checker about conditional conformance extensions.
2018-02-14 07:21:11 +11:00
swift-ci
b2eab97286 Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-02-12 22:57:59 -08:00
swift-ci
39d035a9c6 Merge remote-tracking branch 'origin/master' into master-next 2018-02-12 22:49:30 -08:00
Xi Ge
69bbf2ba71 sourcekitd: using gyb to generate UIDs instead of a def file. NFC (#14549)
Inspired by the infrastructure of SwiftSyntax, a gyb file can facilitate
cross-language sharing.
2018-02-12 22:48:54 -08:00
Huon Wilson
cb60dbeee2 [IDE] Teach type checker about conditional conformance extensions.
Before conditional conformances, the archetypes in conformance
extensions (i.e. extension Foo: SomeProtocol) were equivalent to those
in the type decl, with the same protocol bounds and so on. The code for
printing "synthesized" members relied on this fact. This commit teaches
that code to deal with archetypes in the conditional conformance
extension when required.

Fixes rdar://problem/36553066 and SR-6930.
2018-02-13 17:37:15 +11:00
swift-ci
9e9b3cd3aa Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-02-11 09:57:54 -08:00
swift-ci
0efefd0ec0 Merge remote-tracking branch 'origin/master' into master-next 2018-02-11 09:49:37 -08:00
Xi Ge
2e03eac75c [WIP] Re-apply "SwiftSyntax: Teach SwiftSyntax to use SourceKitd to serialize syntax trees. (#14424)" (#14506)
After removing white space changes and attempting to configure dependencies
correctly.
2018-02-11 09:38:53 -08:00
swift-ci
c6d31e959a Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-02-09 08:38:05 -08:00
swift-ci
f87114ed1f Merge remote-tracking branch 'origin/master' into master-next 2018-02-09 08:29:46 -08:00
Doug Gregor
774bee2294 Revert "Re-apply "SwiftSyntax: Teach SwiftSyntax to use SourceKitd to serialize syntax trees. (#14424)" (#14465)"
This reverts commit f8c77e17ce.
2018-02-08 22:58:45 -08:00
swift-ci
dd8211e51b Merge remote-tracking branch 'origin/master' into master-next 2018-02-08 15:29:17 -08:00
swift-ci
4fc58f568f Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-02-08 15:18:50 -08:00
Xi Ge
f8c77e17ce Re-apply "SwiftSyntax: Teach SwiftSyntax to use SourceKitd to serialize syntax trees. (#14424)" (#14465) 2018-02-08 15:11:31 -08:00
swift-ci
b8f31c1c40 Merge remote-tracking branch 'origin/master' into master-next 2018-02-06 10:29:36 -08:00
swift-ci
92b6a1f625 Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-02-06 10:19:08 -08:00
Ben Langmuir
c03533314d Merge pull request #14366 from benlangmuir/sourcekit-driver
[sourcekit] Use the driver to parse command line arguments
2018-02-06 10:16:28 -08:00
Ben Langmuir
72bde687e4 [sourcekit] Use the driver to parse command line arguments
Stop parsing frontend arguments directly and use the driver instead. The
most intersting part of this change is that it forces us to consider
whether our compiler invocation will have inputs or not.  We have
several kinds of requests that need to create a compiler instance, but
not parse any inputs (interface-generation, doc-info, and indexing when
operating on a module instead of source files).

Incidentally, add an error when trying to do doc-info on multiple source
files. This was already very broken (assertion failures and bogus source
locations), so add an error for it.

rdar://problem/17897287
2018-02-05 15:49:17 -08:00
swift-ci
41c8fff778 Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-02-05 13:37:57 -08:00
swift-ci
89e1dec1d7 Merge remote-tracking branch 'origin/master' into master-next 2018-02-05 13:29:06 -08:00
Nathan Hawes
55d73e97a8 Merge pull request #14355 from nathawes/rdar36077481-crash-in-on-document-update-notification
[sourcekitd] Fix crash in onDocumentUpdateNotification
2018-02-05 13:21:29 -08:00
Nathan Hawes
3d97980e60 [sourcekitd] xpc_retain MainConnection so it remains valid for sending when cancelled from the other end
If a client crashes and we tried to post notifications to the XPC connection,
SourceKitService would go down too, as it never `xpc_retain`ed the connection.

Resolves rdar://problem/36077481
2018-02-02 15:50:47 -08:00
Ben Langmuir
9f3df20dbd [sourcekit] Change fallback module name to match driver
This will reduce test churn when we start using the driver to parse
arguments.  We don't really care what the module name is for these
fallback cases.
2018-02-02 10:26:58 -08:00
swift-ci
c8625a1df1 Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-02-01 16:58:10 -08:00
swift-ci
33cd6c8829 Merge remote-tracking branch 'origin/master' into master-next 2018-02-01 16:49:08 -08:00
David Ungar
354a76ac4e Merge pull request #14198 from davidungar/PR-18-3c-exp2
[Batch mode] Move frontend main output files to FrontendInputsAndOutputs. (1)
2018-02-01 16:42:10 -08:00
swift-ci
35a2b40d53 Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-01-31 02:38:12 -08:00
swift-ci
84f604002a Merge remote-tracking branch 'origin/master' into master-next 2018-01-31 02:29:14 -08:00
Rintaro Ishizaki
fced748790 [Syntax] Represent missing optioanl nodes as nullptr (#14300)
Allocating RawSyntax/SyntaxData for missing optional node is a waste of
resource.
2018-01-31 19:24:00 +09:00
David Ungar
a9819b6e60 Renaming FrontendInputs -> FrontendInputsAndOutputs
Fix comment in ArtsToFrontendOptionsConverter re getOutputFilenamesFromCommandLineOrFilelist
2018-01-30 18:54:38 -08:00
swift-ci
94e6c88fe0 Merge remote-tracking branch 'origin/master' into master-next 2018-01-30 13:49:38 -08:00
swift-ci
8848cd7540 Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-01-30 13:38:06 -08:00
Xi Ge
98570550c3 [SourceKit] Report synthesized protocol conformances for DocSupport request. rdar://36882292 (#14248) 2018-01-30 13:32:50 -08:00
swift-ci
f5e81f6fa7 Merge remote-tracking branch 'origin/master' into master-next 2018-01-25 18:46:31 -08:00
swift-ci
8d00b9ff17 Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-01-25 18:38:49 -08:00
Nathan Hawes
7ed4586f01 Merge pull request #14145 from nathawes/rdar35819975-cursor-info-crasher
[CursorInfo] Fix crash on init call of inner NTD with generic outer NTD
2018-01-25 18:35:35 -08:00
Nathan Hawes
cbf07dae19 [CursorInfo] Fix crash on init call of inner NTD with generic outer NTD
Resolves rdar://problem/35819975
2018-01-25 13:24:51 -08:00
swift-ci
3a521bfe2a Merge remote-tracking branch 'origin/master' into master-next 2018-01-23 20:29:47 -08:00
swift-ci
158eaeaa5e Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-01-23 20:18:53 -08:00
David Ungar
bf439cd2c6 Merge pull request #14090 from davidungar/PR-18-3b
[BatchMode] Rename FrontendInputs::AllFiles to AllInputs, etc
2018-01-23 20:14:46 -08:00
David Ungar
ec2a9573cc Rename FrontendInputs::AllFiles to AllInputs, getAllFiles to getAllInputs, etc. 2018-01-23 14:01:15 -08:00
swift-ci
fc2e2ee06e Merge remote-tracking branch 'origin/master' into master-next 2018-01-17 23:53:17 -08:00
swift-ci
85cef29e2b Merge remote-tracking branch 'origin/master' into master-llvm-swift5-transition 2018-01-17 23:24:08 -08:00
Xi Ge
4c172037e8 [libSyntax][SourceKit] Integrating libSyntax representation of a source file with several SourceKitd syntax requests (#14000)
The enhanced SourceKitd requests are EditorOpen and EdtiorReplaceText. In these two requests, the clients can specify a flag "key. enablesyntaxtree = 1" to get a serialize libSyntax tree with the response.

To help this integration, we added a function in SyntaxParsingContext to explicitly finalize the creation of a SourceFileSyntax to incorporate the fact that SourceKit needs the tree before its destroying the parser instance.

To test this integration, we diff the syntax tree serialized from the frontend action and the tree serialized from a SourceKitd response. They should be identical.
2018-01-17 21:13:22 -08:00
Davide Italiano
118962b034 [SourceKit] Catch up with upstream changes in llvm. 2018-01-16 11:25:06 -08:00