Commit Graph

640 Commits

Author SHA1 Message Date
Dmitri Hrybenko
ea344fc49a tests: use println() instead of print() with a "\n"
Swift SVN r27920
2015-04-29 21:29:59 +00:00
Dmitri Hrybenko
b5d0896828 Un-XFAIL a SceneKit testcase, the blocking issue is fixed
The whole file is still disabled though, because the fix hasn't been
integrated yet.

Swift SVN r27910
2015-04-29 16:55:34 +00:00
Dmitri Hrybenko
dbf1daeb0a Finish the SceneKit overlay for -[SCNSceneSource entryWithIdentifier:withClass:]
rdar://20384835

Swift SVN r27899
2015-04-29 02:22:31 +00:00
Dmitri Hrybenko
4d197dc5b2 Revert "stdlib: change sort() and sorted() into methods"
This reverts commits r27885, r27876.  It looks like they broke iOS on
arm64.

Swift SVN r27893
2015-04-28 23:58:50 +00:00
Dmitri Hrybenko
b05c372c4f stdlib: change sort() and sorted() into methods
Swift SVN r27876
2015-04-28 18:05:37 +00:00
Dmitri Hrybenko
fd14e70e48 stdlib: rename find() to indexOf() per API review
Swift SVN r27849
2015-04-28 00:30:37 +00:00
Chris Lattner
20c74c4d32 update validation tests for improved diagnostics.
Swift SVN r27794
2015-04-27 01:00:40 +00:00
Dmitri Hrybenko
f6090c1c89 stdlib: make CollectionType._prext_isEmpty dynamically dispatched
This change makes isEmpty faster for Dictionary and Set, when invoked
from generic algorithms.

Swift SVN r27736
2015-04-26 00:08:14 +00:00
Dmitri Hrybenko
bc50b2f58d stdlib: stop using CFSetCreateCopy() in set bridging
Use -[NSSet copyWithZone:] instead.

CFSetCreateCopy() is buggy in OSes that ship today: it copies the set
unconditionally, even if it is immutable, resulting in O(n) bridging.

Swift SVN r27733
2015-04-26 00:08:13 +00:00
Dmitri Hrybenko
ba6920e69d stdlib: stop using CFDictionaryCreateCopy() in dictionary bridging
Use -[NSDictionary copyWithZone:] instead.

CFDictionaryCreateCopy() is buggy in OSes that ship today: it copies the
dictionary unconditionally, even if it is immutable, resulting in O(n)
bridging.

Swift SVN r27732
2015-04-26 00:08:12 +00:00
Dmitri Hrybenko
ce95ac26cd stdlib: adjust _NSDictionaryCoreType to match Foundation nullability audit
Swift SVN r27729
2015-04-26 00:08:10 +00:00
Doug Gregor
0523a09560 Update validation testsuite for the argument label default changes.
Swift SVN r27706
2015-04-24 20:31:43 +00:00
Dmitri Hrybenko
8bf1deedb0 The ErrorType race test requires ObjC runtime
Swift SVN r27577
2015-04-22 08:50:20 +00:00
Dmitri Hrybenko
02d254047b stdlib: add a hook for dynamic dispatch in CollectionType.find()
This hook allows Set.find() to be equally efficient in static and
generic contexts.

This time, with correct tests.

Swift SVN r27404
2015-04-17 05:03:28 +00:00
Dmitri Hrybenko
e94b0f9b40 Revert "stdlib: add a hook for dynamic dispatch in CollectionType.find()"
This reverts commit r27402.  It broke tests.

Swift SVN r27403
2015-04-17 04:59:29 +00:00
Dmitri Hrybenko
fe53f87dfc stdlib: add a hook for dynamic dispatch in CollectionType.find()
This allows Set.find() to be equally efficient in static and generic
contexts.

Swift SVN r27402
2015-04-17 04:19:49 +00:00
Dmitri Hrybenko
0d6374bb58 stdlib/HashedCollections: skip computing the hash for lookups in empty
collections

Swift SVN r27395
2015-04-17 01:56:19 +00:00
Chris Willmore
f121773690 Update preprocessor directive in validation test for AppleTV.
<rdar://problem/20559420> validation-test/stdlib/StdlibUnittestStdin.swift fails on appletvsimulator-x86_64

Swift SVN r27336
2015-04-15 23:01:59 +00:00
Devin Coughlin
d08b98b1ca Sema: Turn on availability checking by default
Enable checking for uses of potentially unavailable APIs. There is
a frontend option to disable it: -disable-availability-checking.

This commit updates the SDK overlays with @availability() annotations for the
declarations where the overlay refers to potentially unavailable APIs. It also changes
several tests that refer to potentially unavailable APIs to use either #available()
or @availability annotations.

Swift SVN r27272
2015-04-14 06:44:01 +00:00
Dmitri Hrybenko
d267b86cb6 stdlib: move the bulk of SequenceType algorithms to protocol extensions
rdar://19895265

Swift SVN r27269
2015-04-14 01:53:19 +00:00
Dmitri Hrybenko
a84793c60b Fix and re-enable StdlibUnittestRunAllTestsCalledTwice.swift on iOS
Swift SVN r27234
2015-04-11 06:13:52 +00:00
Greg Parker
4fd7e8948f [test] XFAIL StdlibUnittestRunAllTestsCalledTwice.swift on iOS.
The test's check doesn't work on iOS device or simulator; perhaps 
`not --crash` isn't doing its thing.


Swift SVN r27231
2015-04-11 03:35:14 +00:00
Dmitri Hrybenko
a5d6aec352 StdlibUnittest: add a diagnostic for calling runAllTests() twice
... and fix this issue in the sort() test.

Swift SVN r27215
2015-04-10 21:54:56 +00:00
Dave Abrahams
0464c3d957 [stdlib] [Generator|Sequence]Of => Any[Generator|Sequence]
Retire the old components now that the new ones have passed API review.

<rdar://20406937> covers the migration fallout of this change.

Swift SVN r27092
2015-04-07 20:32:31 +00:00
Dave Abrahams
ac3f047496 [stdlib] Renaming fallout from Mirror API review
toString(x)      => String(x)
toDebugString(x) => String(reflecting: x)
Printable        => CustomStringConvertible
DebugPrintable   => CustomDebugStringConvertible

Also updated comments to clarify these protocols

Swift SVN r27090
2015-04-07 20:32:26 +00:00
Michael Gottesman
2c143aee96 Revert "[stdlib] [Generator|Sequence]Of => Any[Generator|Sequence]"
This reverts commit r27081. It broke the build.

Swift SVN r27086
2015-04-07 17:21:03 +00:00
Dave Abrahams
a80b1a4caa [stdlib] [Generator|Sequence]Of => Any[Generator|Sequence]
Retire the old components now that the new ones have passed API review.

<rdar://20406937> covers the migration fallout of this change.

Swift SVN r27081
2015-04-07 15:20:40 +00:00
Greg Parker
c253072f05 [test] Disable bin8 decode test on arm64.
<rdar://20448082> Possible miscompile in MsgPackDecoder.readBinary() 
on optimized arm64


Swift SVN r27078
2015-04-07 12:38:49 +00:00
Greg Parker
67ed0ef62a [test] Fix typo in validation-test/stdlib/SceneKit.swift for 32-bit.
Swift SVN r27074
2015-04-07 07:43:31 +00:00
Dmitri Hrybenko
ed99e14f54 SDK overlay: create an overlay for SceneKit
rdar://20384803
rdar://20384835

Swift SVN r27069
2015-04-07 06:41:55 +00:00
Dmitri Hrybenko
1b9ca12c5b stdlib: remove old declarations that were marked unavailable
rdar://20169533

Swift SVN r27020
2015-04-05 09:15:49 +00:00
Dmitri Hrybenko
ff2dd6320a stdlib: fix coding style
When colon specifies is-a relationship between types, we put spaces on
both sides of the colon.

Swift SVN r27016
2015-04-05 05:54:55 +00:00
Joe Groff
fe3d75eec8 Update for feedback from Dmitri.
Simplify the observation evaluation in the ErrorType race test by using evaluateObservationsAllEqual, and run the test for real. Apparently round-trip NSString and NSDictionary bridging doesn't produce a stable object, so use valueForKey as a hack to sidestep bridging so we can verify that the identities of the bridged domain and code aren't racy.

Swift SVN r27003
2015-04-05 03:07:42 +00:00
Joe Groff
41f73d43ae Runtime: Try to make lazy ErrorType-to-NSError bridging thread-safe.
Atomically initialize and load the NSError bridging fields within an ErrorType box so that we do the right thing when two threads concurrently coerce the box to NSError.

Swift SVN r26996
2015-04-05 00:17:34 +00:00
Michael Gottesman
0255a5b948 Revert "[stdlib] [Generator|Sequence]Of => Any[Generator|Sequence]"
This reverts commit r26904. Fixing the build.

Swift SVN r26912
2015-04-02 22:55:30 +00:00
Dave Abrahams
0b40374d10 [stdlib] [Generator|Sequence]Of => Any[Generator|Sequence]
Retire the old components now that the new ones have passed API review.

<rdar://20406937> covers the migration fallout of this change.

Swift SVN r26904
2015-04-02 21:55:22 +00:00
Mark Lacey
b7dc974c1f Fix test by adjusting spacing around range operator.
Swift SVN r26544
2015-03-25 18:15:38 +00:00
Dave Abrahams
2822677b4b [stdlib] Clean up some endline layout in the tests
Just following our coding convention...

Swift SVN r26507
2015-03-24 23:55:55 +00:00
Graham Batty
82242f67cf Update flags for linux compat.
Swift SVN r26504
2015-03-24 23:16:57 +00:00
Dmitri Hrybenko
87aa7a25ba Update String test to new Foundation API (nullability audit)
Swift SVN r26493
2015-03-24 18:00:09 +00:00
Dmitri Hrybenko
1258662db9 CoreAudio overlay: add APIs that were blocked by rdar://16974298
(extensions on generic types in a different module)

Swift SVN r26486
2015-03-24 07:50:51 +00:00
Dmitri Hrybenko
c421c51a42 StdlibUnittest: add facilities to replace NSLocale.currentLocale()
Will use this API to write tests for rdar://20171815.

Swift SVN r26391
2015-03-21 05:41:46 +00:00
Chris Lattner
ce9b0131a1 Change the testsuite to not use typed patterns in nested contexts, which
requires pushing the types out.  The only interesting one is this diff:

-  var (e,f,g:(),h) = MRV()
+  var (e,f,g,h) : (Int, Float, (), Double) = MRV()

... where the type annotation is required to silence the warning about "void type
may be unexpected".  This seems perfectly reasonable to me.



Swift SVN r26161
2015-03-15 19:11:18 +00:00
Chris Lattner
20f8f09ea8 Land: <rdar://problem/19382905> improve 'if let' to support refutable patterns and untie it from optionals
This changes 'if let' conditions to take general refutable patterns, instead of
taking a irrefutable pattern and implicitly matching against an optional.

Where before you might have written:
  if let x = foo() {

you now need to write:
  if let x? = foo() {
    
The upshot of this is that you can write anything in an 'if let' that you can
write in a 'case let' in a switch statement, which is pretty general.

To aid with migration, this special cases certain really common patterns like
the above (and any other irrefutable cases, like "if let (a,b) = foo()", and
tells you where to insert the ?.  It also special cases type annotations like
"if let x : AnyObject = " since they are no longer allowed.

For transitional purposes, I have intentionally downgraded the most common
diagnostic into a warning instead of an error.  This means that you'll get:

t.swift:26:10: warning: condition requires a refutable pattern match; did you mean to match an optional?
if let a = f() {
       ^
        ?

I think this is important to stage in, because this is a pretty significant
source breaking change and not everyone internally may want to deal with it
at the same time.  I filed 20166013 to remember to upgrade this to an error.

In addition to being a nice user feature, this is a nice cleanup of the guts
of the compiler, since it eliminates the "isConditional()" bit from
PatternBindingDecl, along with the special case logic in the compiler to handle
it (which variously added and removed Optional around these things).




Swift SVN r26150
2015-03-15 07:06:22 +00:00
Graham Batty
388f0dd5de Check if existing capacity is enough even on non-objc.
Fixes rdar://problem/20089729

Swift SVN r26109
2015-03-13 20:14:20 +00:00
Dmitri Hrybenko
1048d5703b Add a test for assertionFailure not being @noreturn
It is a no-op in -O.

Swift SVN r25920
2015-03-10 07:25:50 +00:00
Dave Abrahams
6423209466 [stdlib] Fix assert docs and semantics
We must not lie to the user or to the optimizer!

Swift SVN r25913
2015-03-10 04:37:12 +00:00
Dmitri Hrybenko
e460eb6264 Revert "[stdlib] Replace aString.toInt() with Int(aString)"
This reverts commit r25636.  It depends on integer parsing APIs, which
are being moved to SwiftExperimental.

Swift SVN r25889
2015-03-09 19:04:18 +00:00
Dmitri Hrybenko
abd0b72638 SwiftPrivateSerialization: refuse to deserialize extremely large arrays
and dictionaries on 32-bit platforms, where size does not fit into an
Int

Swift SVN r25886
2015-03-09 17:10:07 +00:00
Dmitri Hrybenko
3d548845f5 Disable the serialization test on Linux, since it does not finish in any
reasonable time

Swift SVN r25882
2015-03-09 10:09:37 +00:00