Commit Graph

3682 Commits

Author SHA1 Message Date
Xi Ge
571b29b64f SwiftSyntaxTest: refactor command-line argument parsing into a test utility module. NFC (#18418) 2018-07-31 17:05:47 -07:00
Alex Hoppen
bffa15ba63 [SwiftSyntax] Don't reclassify nodes that haven't changed since last transfer 2018-07-31 15:41:07 -07:00
Alex Hoppen
49e9f824bf [SwiftSyntax] Record the nodes that have been reused during an incremental transfer
This way we will be able to avoid reclassifying these nodes for syntax
highlighting since we know they haven't changed.
2018-07-31 15:41:07 -07:00
swift-ci
f66e55653f Merge remote-tracking branch 'origin/master' into master-next 2018-07-31 14:29:50 -07:00
Davide Italiano
a7f36075ff Merge pull request #17571 from dcci/existentialremoteast
[RemoteAST] Initial support for projecting the type out of an existen…
2018-07-31 14:27:50 -07:00
Alex Hoppen
b48f740712 [SourceKit] Serialize the syntax tree in the EditorConsumer
This will allow us to switch to a more efficient serialization format in
the future.
2018-07-31 13:51:16 -07:00
swift-ci
7a25818d82 Merge remote-tracking branch 'origin/master' into master-next 2018-07-31 13:49:49 -07:00
Davide Italiano
4b5c2295d1 [RemoteAST] Support for extracting the type/valuea out of an existential.
This will be used in lldb.
<rdar://problem/41546568>
2018-07-30 17:00:23 -07:00
swift-ci
287ce7bbbd Merge remote-tracking branch 'origin/master' into master-next 2018-07-30 15:10:04 -07:00
Alex Hoppen
179940b65b [swiftSyntax] Add test cases for the SyntaxClassifier 2018-07-30 14:55:54 -07:00
Alex Hoppen
775beece65 [libSyntax] Add a swift token classifier for syntax highlighting 2018-07-30 14:54:43 -07:00
Alex Hoppen
3deee08f70 Merge pull request #18314 from ahoppen/remove-syntax-classifier
[libSyntax] Remove the C++ SyntaxClassifier
2018-07-30 14:52:15 -07:00
Alex Hoppen
749a13a6fe [libSyntax] Remove the C++ SyntaxClassifier
The recommended way forward is to use the SyntaxClassifier on the Swift
side.

By removing the C++ SyntaxClassifier, we can also eliminate the
-force-libsyntax-based-processing option that was used to bootstrap
incremental parsing and would generate the syntax map from a syntax
tree.
2018-07-30 09:26:18 -07:00
swift-ci
fc9bbd98c5 Merge remote-tracking branch 'origin/master' into master-next 2018-07-29 21:29:01 -07:00
Michael Gottesman
53403e29ac [+0-all-args] Remove the SILOption EnableGuaranteedNormalArguments and minimally simplify code.
I made this change by removing the SILOption and then doing a compile, fix loop. I
purposely did not move around the code to make the refactoring really easy to
see.
2018-07-29 20:15:51 -07:00
swift-ci
7b67c4fb2e Merge remote-tracking branch 'origin/master' into master-next 2018-07-27 08:09:19 -07:00
Alex Hoppen
448327609d Merge pull request #18276 from ahoppen/03-rawsyntax-struct
[libSyntax] Make RawSyntax a struct
2018-07-27 08:04:10 -07:00
swift-ci
6f290ba68d Merge remote-tracking branch 'origin/master' into master-next 2018-07-26 20:49:22 -07:00
Alex Hoppen
478518fcf7 [swiftSyntax] Add type annotations to speed up compile time 2018-07-26 20:46:58 -07:00
Alex Hoppen
8c8f4eb1df [libSyntax] Make RawSyntax a struct
SourcePresence and ID are already shared between the two node kinds and
the node's length will soon be cached in RawSyntax as well. By making it
a struct, we will be able to compute the node's length when it is being
constructed in the initialiser.
2018-07-26 20:46:58 -07:00
Alex Hoppen
aa4993945a [swiftsyntax] Fix issue that caused swift-swiftsyntax-test to not be generated by Xcode 2018-07-26 17:29:49 -07:00
swift-ci
9711455ad8 Merge remote-tracking branch 'origin/master' into master-next 2018-07-26 14:49:10 -07:00
Jordan Rose
ca5eacf016 Merge pull request #18203 from jrose-apple/strung-out
Consistently get extensions from FileTypes.h.
2018-07-26 14:30:52 -07:00
swift-ci
ce3c206eee Merge remote-tracking branch 'origin/master' into master-next 2018-07-26 13:09:13 -07:00
Xi Ge
bff3f8adcc Merge pull request #16983 from mohitathwani/SR-7292
[WIP] Generating member wise initializer with local refactoring
2018-07-26 13:05:08 -07:00
Mohit Athwani
ce1122921a SR-7292 - Refactoring tool for generating member wise init 2018-07-26 11:31:30 -07:00
Jordan Rose
67a6a4ff18 Move swift/Frontend/FileTypes.h down to Basic
The next commit will take advantage of this, but this is just a
mechanical change.
2018-07-25 22:23:00 -07:00
Jordan Rose
798496c488 Consistently get extensions from swift/Frontend/FileTypes.h
...instead of sometimes hardcoding them and sometimes using Strings.h.
The exceptions are the libraries that sit below Frontend; these can
continue using strings.
2018-07-25 21:49:01 -07:00
swift-ci
4b684e97ef Merge remote-tracking branch 'origin/master' into master-next 2018-07-25 19:29:15 -07:00
Rintaro Ishizaki
6346e9b437 [libSyntax] Fix compiler error (#18243)
Another instance of 7ad81a88b9.
2018-07-26 11:12:24 +09:00
swift-ci
d7e358f80f Merge remote-tracking branch 'origin/master' into master-next 2018-07-25 17:49:26 -07:00
Alex Hoppen
4d16a64651 Merge pull request #18238 from ahoppen/01b-fix-compile-error
[SourceKit] Fix compile error
2018-07-25 17:46:00 -07:00
Alex Hoppen
7ad81a88b9 [SourceKit] Fix compile error 2018-07-25 16:31:40 -07:00
swift-ci
879a10aa57 Merge remote-tracking branch 'origin/master' into master-next 2018-07-25 15:29:05 -07:00
Alex Hoppen
c8fc286428 Merge pull request #18152 from ahoppen/01-incr-tree-transfer
[libSyntax] Incremental syntax tree transfer
2018-07-25 15:26:57 -07:00
Alex Hoppen
d926b74836 [incrParse] Add test cases to test the incremental syntax tree transfer 2018-07-24 16:32:23 -07:00
Alex Hoppen
8bab276d64 [libSyntax] Add incremental syntax tree deserialization to SwiftSyntax 2018-07-24 16:32:23 -07:00
Bob Wilson
e7478ea91f Merge pull request #18178 from bob-wilson/master-next-r334221
[master-next] Update some recent code for LLVM r334221
2018-07-24 00:11:13 -07:00
Bob Wilson
965c47ccb3 [master-next] Update some recent code for LLVM r334221
The LLVM change happened a while ago, but some new uses of the old
F_RW flag were introduced recently in 57ccdd89b6.
2018-07-23 20:52:35 -07:00
swift-ci
685b007c3f Merge remote-tracking branch 'origin/master' into master-next 2018-07-23 20:39:45 -07:00
John McCall
70e2aea266 Merge pull request #18156 from rjmccall/generalized-accessors
Implement generalized accessors using yield-once coroutines
2018-07-23 22:58:25 -04:00
John McCall
7a4aeed570 Implement generalized accessors using yield-once coroutines.
For now, the accessors have been underscored as `_read` and `_modify`.
I'll prepare an evolution proposal for this feature which should allow
us to remove the underscores or, y'know, rename them to `purple` and
`lettuce`.

`_read` accessors do not make any effort yet to avoid copying the
value being yielded.  I'll work on it in follow-up patches.

Opaque accesses to properties and subscripts defined with `_modify`
accessors will use an inefficient `materializeForSet` pattern that
materializes the value to a temporary instead of accessing it in-place.
That will be fixed by migrating to `modify` over `materializeForSet`,
which is next up after the `read` optimizations.

SIL ownership verification doesn't pass yet for the test cases here
because of a general fault in SILGen where borrows can outlive their
borrowed value due to being cleaned up on the general cleanup stack
when the borrowed value is cleaned up on the formal-access stack.
Michael, Andy, and I discussed various ways to fix this, but it seems
clear to me that it's not in any way specific to coroutine accesses.

rdar://35399664
2018-07-23 18:59:58 -04:00
Bob Wilson
ffa88c3d28 Merge remote-tracking branch 'origin/master' into master-next 2018-07-23 14:38:55 -07:00
Bob Wilson
ad8cd14233 Merge pull request #18127 from bob-wilson/fix-indentation
NFC: Fix indentation around the newly renamed LLVM_DEBUG macro.
2018-07-23 14:23:19 -07:00
Alex Hoppen
57196f8902 [libSyntax] Enable serialization of syntax trees for incremental transfer 2018-07-23 12:32:49 -07:00
swift-ci
c0d6b81349 Merge remote-tracking branch 'origin/master' into master-next 2018-07-23 00:49:34 -07:00
Slava Pestov
5213f80e7e IDE: Remove uses of AbstractFunctionDecl::getParameterLists() 2018-07-22 20:56:56 -07:00
Bob Wilson
8e330ee344 NFC: Fix indentation around the newly renamed LLVM_DEBUG macro.
Jordan used a sed command to rename DEBUG to LLVM_DEBUG. That caused some
lines to wrap and messed up indentiation for multi-line arguments.
2018-07-21 00:56:18 -07:00
swift-ci
ecc51ae18f Merge remote-tracking branch 'origin/master' into master-next 2018-07-20 19:29:43 -07:00
swift-ci
dc7a51e3ed Merge pull request #18125 from nkcsgexi/extension-from-other 2018-07-20 19:11:49 -07:00