Hugh Bellamy
9580d5b044
Introduce and use SWIFT_TRAILING_OBJECTS_OVERLOAD_TOKEN to simplify MSVC hacks
2017-01-17 20:45:59 +00:00
Bob Wilson
eeb0f08988
Merge remote-tracking branch 'origin/master' into master-next
2017-01-17 10:45:44 -08:00
Hugh Bellamy
201ad5d594
Prefix COMPILER_IS_MSVC with SWIFT_
2017-01-16 22:09:53 +00:00
Hugh Bellamy
4dfa6389b0
Introduce and use SWIFT_DELETE_OPERATOR_DELETED
2017-01-16 22:05:27 +00:00
Bob Wilson
34514513fd
Merge remote-tracking branch 'origin/master' into master-next
2017-01-15 17:34:17 -08:00
Hugh Bellamy
cf777d04f5
Introduce and use COMPILER_IS_MSVC
2017-01-15 15:17:18 +00:00
Matthew Carroll
5497bfb7b4
SR-3175: Include the terminating signal number in the driver output
...
* Add the signal number of the terminated task to the output of the driver on platforms for which the signal number is available. The new key in the parseable driver output is "signal".
* Add a test to verify that the signal number is emitted.
* Add documentation for the new "signal" key emitted in the parseable driver output.
https://bugs.swift.org/browse/SR-3175
2017-01-13 13:48:41 -05:00
Slava Pestov
ee295ddbb8
AST: Nuke the unqualified archetype mangling
2017-01-12 23:20:35 -08:00
Bob Wilson
c765d5e3a5
Merge remote-tracking branch 'origin/master' into master-next
2017-01-12 15:58:19 -08:00
Slava Pestov
bbecb33d13
Merge pull request #4532 from jtbandes/suggestions
...
[QoI] offer typo correction for platform conditionals
2017-01-12 13:31:05 -08:00
swift-ci
808c48401f
Merge pull request #6743 from swiftix/wip-partial-pre-specializations-wip-layout-constraints
2017-01-12 10:12:44 -08:00
Jacob Bandes-Storch
49f5251c73
[QoI] offer typo correction for platform conditionals
2017-01-12 09:07:53 -08:00
Roman Levenstein
8b6a0315a4
(De)Mangling of layout constraints and requirements.
2017-01-12 00:57:06 -08:00
Sean Callanan
f57a87701a
Merge pull request #6739 from scallanan/separate-stderr
...
Optionally separate Tasks` stderr from stdout.
2017-01-11 13:37:22 -08:00
Sean Callanan
399709ccb8
Optionally separate Tasks` stderr from stdout.
...
Fixes a serious problem where spurious output from xcrun breaks
swift's discovery of libarclite.
<rdar://problem/28573949>
2017-01-11 11:11:23 -08:00
Mark Lacey
5f2aeec434
Implement a new "expression too complex" metric for Swift 4 mode.
...
Rather than waiting until we've used a huge amount of memory, attempt to
make the choice to bail out based on the number of type bindings /
disjunction choices we visit.
I expect this will generally fail faster than the Swift 3 metric, but
will still only fail when we've got clearly exponential type checking
behvior.
Since we have multiple sources of exponential behavior today, I don't
want to make the bounds too tight. Once we fix some/most of that
behavior we can look at further tightening up the metric.
2017-01-10 22:09:11 -08:00
Bob Wilson
37e7d1c627
Merge remote-tracking branch 'origin/master' into master-next
2017-01-08 17:07:46 -08:00
practicalswift
6d1ae2a39c
[gardening] 2016 → 2017
2017-01-06 16:41:22 +01:00
Bob Wilson
4ca0676a34
Merge remote-tracking branch 'origin/master' into master-next
2017-01-05 17:11:16 -08:00
Erik Eckstein
8cf641ce2b
Mangling: fix crash when mangling an identifier which has a unicode char as first character and a digit as second char.
2017-01-04 16:20:09 -08:00
Joe Shajrawi
66e45979c7
Merge pull request #6451 from shajrawi/outline_enum_retain_release
...
[IRGen] Code Size Reduction: Outline Copy/Consume (Loadable) Enum
2017-01-03 18:39:54 -08:00
Michael Gottesman
b95a34a797
Add a new utility called reverse_range(start, end) that returns a reverse range from (start, end].
2017-01-03 17:01:20 -08:00
Michael Gottesman
3fae2be5b6
Format doxygen comment correctly.
2017-01-03 17:01:19 -08:00
Bob Wilson
78b28243ff
Merge remote-tracking branch 'origin/master' into master-next
2017-01-03 14:22:59 -08:00
Joe Shajrawi
ee5ed7bdc6
[IRGen] Code Size Reduction: Outline Copy/Consume (Loadable) Enum
2016-12-22 17:08:15 -08:00
practicalswift
44cd889924
[gardening] Fix recently introduced headers.
2016-12-21 21:19:10 +01:00
Erik Eckstein
947996ceaf
Mangling: encode an optional unique ID in the function specialization mangling, instead of appending _unique_suffix
2016-12-20 13:47:48 -08:00
swift-ci
eadb93a59b
Merge pull request #6241 from hughbe/msvc-limit
2016-12-20 11:38:25 -08:00
practicalswift
e027aa6282
[gardening] Use correct header.
2016-12-20 10:08:35 +01:00
Michael Gottesman
6f3c1ee658
Add a new ArrayRefView like structure called TransformArrayRef.
...
The difference is that TransformArrayRef stores its function as an std::function
instead of using a template parameter. This is useful in situations where one
wants to define such a type in a header on forward declared pointers. If one had
to define the function to be used as a template parameter, one would have to
define the function or provide a forward declared version
2016-12-18 01:11:14 -08:00
practicalswift
16d6dce62e
[gardening] Fix recently introduced typos.
2016-12-16 21:42:09 +01:00
Jordan Rose
dab6d49596
[ClangImporter] Don't crash on empty initial selector pieces. ( #6284 )
...
Yes, ':' is a valid selector, as are '::' and ':seriously:'.
rdar://problem/28448188
2016-12-15 14:41:19 -08:00
Erik Eckstein
eb9cadb501
Mangling: add a substitution for optional types (bound generic enum Swift.Optional)
2016-12-14 16:40:13 -08:00
Erik Eckstein
4a492fc5a7
Mangling: Change new mangling for bound generic types.
...
Putting the nominal type in the first place increases the changes for common prefixes (for the trie).
2016-12-14 16:39:00 -08:00
Erik Eckstein
86686a5ae4
Mangling: change new prefix to _T0
...
This is temporary until we finally change it to _S
2016-12-14 16:39:00 -08:00
Erik Eckstein
c34c0e4bbc
Mangling: Don’t hardcode the mangling prefixes in symbols selected by SELECT_MANGLING
2016-12-14 16:39:00 -08:00
Erik Eckstein
62e32a1044
Mangling: support for mangling of partial specializations
2016-12-13 11:03:21 -08:00
Bob Wilson
deddf19aae
Merge remote-tracking branch 'origin/master' into master-next
2016-12-13 10:23:03 -08:00
Hugh Bellamy
eca5b3da34
Change _MSC_VER conditions to _WIN32 conditions in stubs
2016-12-13 14:15:39 +00:00
Hugh Bellamy
0bba737b54
Limit MSVC workaround to MSVC, not clang-cl
2016-12-13 00:20:37 +00:00
Saleem Abdulrasool
ac6edab22e
Merge pull request #6025 from hughbe/remote-msvc
...
Port swift/remote to Windows and MSVC
2016-12-10 12:54:35 -08:00
Hugh Bellamy
53744b9b5a
Fix errors and warnings building swift/remote on Windows using MSVC
2016-12-10 16:05:01 +00:00
Erik Eckstein
7dbab5a54e
Mangling: symbol macro for objc partial apply forwarder
2016-12-09 09:05:19 -08:00
Erik Eckstein
af24045941
Mangling: correct mangling of partial apply forwarders
...
Plus some refactoring in the demangler
2016-12-09 09:05:18 -08:00
Erik Eckstein
d94dd580f6
Mangling: de- and re-mangling of GenericTypeParamDecl
...
This is also missing in the old mangling
2016-12-09 09:05:17 -08:00
Erik Eckstein
11d8207d0e
Mangling: Select the correct mangling scheme for the re-mangler in the compiler
2016-12-09 09:05:15 -08:00
Joe Groff
15a2432efb
Merge pull request #6135 from jckarter/use-sil-box-field-accessors-4
...
Mangle SILBoxTypes with their layout.
2016-12-08 21:09:31 -08:00
Joe Groff
7429ffb228
Mangle SILBoxTypes with their layout.
...
Use a new mangling scheme that describes the layout of compound boxes. For compatibility with reflection-based clients, continue to use the legacy mangling for single-field boxes when emitting reflection TypeRefs until we fully support reflection for the new box implementation.
2016-12-08 20:02:44 -08:00
Michael Gottesman
0bfda96ace
[sil-func-extractor] Teach sil-extract to extract a list of functions and the inverse of a list of functions. Also rename to sil-func-extractor to make it clearer what it is doing.
...
This will allow for modules to be split from the command line using a script.
The one thing that is missing from this still is that it does not handle shared
functions in IMO a satisfactory way. Given that we are splitting a module, my
feeling that the correct way to do this is to create a public shim for the
shared function in the module that the shared function gets put in and let all
other users use that entry point.
But I need to think about this a bit more.
2016-12-08 18:29:33 -08:00
practicalswift
3e31a3ade4
[gardening] Fix typos.
2016-12-06 21:42:01 +01:00