Commit Graph

1226 Commits

Author SHA1 Message Date
Doug Gregor
57a056dcef Revert "stdlib: add an experimental serialization API"
This reverts commit r25678, which breaks the build:

/Users/dgregor/Projects/Apple/swift/stdlib/serialization/MsgPack.swift:117:34: error: integer literal overflows when stored into 'Int'
    } else if utf8Bytes.count <= 0xffff_ffff {
                                 ^
/Users/dgregor/Projects/Apple/swift/stdlib/serialization/MsgPack.swift:139:34: error: integer literal overflows when stored into 'Int'
    } else if dataBytes.count <= 0xffff_ffff {
                                 ^
/Users/dgregor/Projects/Apple/swift/stdlib/serialization/MsgPack.swift:160:24: error: integer literal overflows when stored into 'Int'
    } else if count <= 0xffff_ffff {
                       ^
/Users/dgregor/Projects/Apple/swift/stdlib/serialization/MsgPack.swift:189:31: error: integer literal overflows when stored into 'Int'
    } else if mappingCount <= 0xffff_ffff {
                              ^
/Users/dgregor/Projects/Apple/swift/stdlib/serialization/MsgPack.swift:235:29: error: integer literal overflows when stored into 'Int'
    } else if data.count <= 0xffff_ffff {
                            ^

Swift SVN r25693
2015-03-02 22:41:29 +00:00
Dmitri Hrybenko
581dc3c35d stdlib: split topic-focused modules out of StdlibUnittest
The new modules are:

* SwiftUnstable -- assorted additions to the core standard library
  (more algorithms etc.)

* SwiftUnstableDarwinExtras -- proposed additions to the Darwin overlay,
  not yet reviewed by the Darwin team.

* SwiftUnstablePthreadExtras -- wrappers that make it possible to
  use pthread in Swift (they work around the lack of block-based API in
  pthread).  In future these could be possibly folded into the Darwin
  overlay as well.

These APIs are useful without StdlibUnittest for writing automation
tools in Swift.  Just like SwiftExperimental, none of these modules are
exposed to extrenal users.

Also, since these new modules can be compiled with -sil-serialize-all
(unlike StdlibUnittest, where we can't apply the flag because of
compiler bugs), standard library tests that need to run optimized code
(like AtomicInt.swift) are *much* faster now.

Swift SVN r25679
2015-03-02 10:38:42 +00:00
Dmitri Hrybenko
1a7f8f71a3 stdlib: add an experimental serialization API
The primary motivation for doing this is that NSCoding does not work
with struts and Swift containers.  Making everything classes just to
satisfy NSCoding forces unnatural code.

This API requires two times (!) less boilerplate than NSCoding, since
the same method is used for serialization and deserialization.  This API
is also more type-safe, it does not require the user to write 'as' type
casts, unlike NSCoding.

Please take a look at validation-test/stdlib/Serialization.swift to see
the intended use pattern.

The performance of the underlying implementation is already decent, and
there's a lot of room for improvement.

These APIs will be used for writing automation tools in Swift.  Just
like SwiftExperimental, this module is not exposed to extrenal users.

Swift SVN r25678
2015-03-02 10:38:25 +00:00
Dave Abrahams
47288e357b [stdlib] Replace aString.toInt() with Int(aString)
Swift SVN r25636
2015-02-28 06:01:03 +00:00
Dmitri Hrybenko
822a1a2833 StdlibUnittest: allow to feed custom stdin input into a test
Will be used to test readLine().

rdar://15911365

Swift SVN r25597
2015-02-27 05:59:28 +00:00
Dave Abrahams
ab07daa73d [stdlib] Drop validation tests for numeric parsing
The smoke tests can give us enough checking.

Swift SVN r25587
2015-02-27 02:08:44 +00:00
Dave Abrahams
bd12dcf135 [stdlib] Add integer parsing
Addresses <rdar://17232531>; floating point still remains to be done.

Swift SVN r25549
2015-02-26 11:22:35 +00:00
Chris Lattner
e120cd5cf0 revert changes to testsuite for if/let pattern restriction.
Swift SVN r25512
2015-02-24 20:41:12 +00:00
Graham Batty
7346a9733d Update test and validation-test flags for linux.
Swift SVN r25506
2015-02-24 18:55:42 +00:00
Dave Abrahams
1badcbc14b [stdlib] Rename Slice => ArraySlice
Leave room for a generic Slice type in a later release.

Swift SVN r25493
2015-02-24 00:18:58 +00:00
Dave Abrahams
2cf5650b48 [stdlib] Fix two problems with Character<=>String
<rdar://problem/19803733> String#append(Character) is broken in Swift 1.2 (beta)
<rdar://problem/19809905> Swift 1.2: join does not work with Emoji strings

Swift SVN r25449
2015-02-21 01:14:14 +00:00
Chris Lattner
670dfcc6ab final validation test adjustments, it actually passes after these changes.
Swift SVN r25446
2015-02-21 00:19:29 +00:00
Chris Lattner
6712817f89 additional changes for the validation testsuite, that I missed
in the previous pass.


Swift SVN r25444
2015-02-21 00:12:43 +00:00
Chris Lattner
6d0a7c39e8 adjust the validation tests to the new if/let syntactic restrictions.
Thanks to Dmitri for doing almost all of this.


Swift SVN r25443
2015-02-20 23:56:30 +00:00
Dave Abrahams
cb68f83129 [stdlib] Fix OpenCL overlay test
Just replace it with a translation of some C sample code, and switch up
the way the kernel args are passed

Swift SVN r25426
2015-02-20 15:24:31 +00:00
Dave Abrahams
257c6d3e8c [stdlib] VarArgs overlay forwarding for OpenCL
Fixes <rdar://19051606> (OpenCL variadic clSetKernelArgsListAPPLE function unavailable)

Swift SVN r25412
2015-02-20 03:19:56 +00:00
Maxwell Swadling
b1857d2452 [stdlib] added flatMap
fixes rdar://problem/19338087

Swift SVN r25378
2015-02-18 22:58:35 +00:00
Dmitri Hrybenko
51db8ec975 tests: dissolve PrimitiveDataTypes.swift in other test files
Swift SVN r25345
2015-02-17 03:27:24 +00:00
Dmitri Hrybenko
4c8fad7f40 tests: add (failing) tests for mandatory inlining of && and ||
Swift SVN r25261
2015-02-13 01:14:13 +00:00
Dmitri Hrybenko
d65d46562a tests: merge two tests for fixed point types
Swift SVN r25233
2015-02-12 11:26:01 +00:00
Dmitri Hrybenko
1dec9814bb Revert a chain of work-in-progress commits implementing readLine() that
I committed by mistake.

Swift SVN r25224
2015-02-12 02:33:21 +00:00
Dmitri Hrybenko
74e5b71b0f wip
Swift SVN r25222
2015-02-12 02:29:00 +00:00
Dmitri Hrybenko
cdb7850e0a stdlibunittest stdin wip
Swift SVN r25221
2015-02-12 02:28:59 +00:00
Dmitri Hrybenko
64ffcf43bf tests: check that array generators traverse a snapshot of the array
Swift SVN r25172
2015-02-11 07:12:26 +00:00
Dmitri Hrybenko
a99093581b stdlib: change {Dictionary,Set}.Generator to value semantics
Generator observes a snapshot of the collection.  Mutating the
collection should not have any effect on existing generators.

rdar://19726013

Swift SVN r25171
2015-02-11 07:12:25 +00:00
Dmitri Hrybenko
6f6ca68aaf stdlib: mark closures in Array.map() and Array.filter() with @noescape
rdar://19389247

Swift SVN r25131
2015-02-10 19:54:28 +00:00
Dmitri Hrybenko
a35767757e StdlibUnittest: add an asertion, expectUnreachable()
Swift SVN r25090
2015-02-09 05:39:26 +00:00
Dmitri Hrybenko
82828ae5a4 tests: use line-directive to run generated tests
Swift SVN r25026
2015-02-06 01:10:58 +00:00
Dmitri Hrybenko
e4b1cbeb64 stdlib: remove .null() static factories on unsafe pointers
These APIs are redundant with nil literals and the default initializer.

rdar://19159145

Swift SVN r24957
2015-02-04 11:17:55 +00:00
Dmitri Hrybenko
34d393bd22 stdlib: stop using AutoreleasingUnsafeMutablePointer.null()
Swift SVN r24956
2015-02-04 11:17:54 +00:00
Dmitri Hrybenko
f04e0d9748 tests: simplify RUN lines
Swift SVN r24954
2015-02-04 11:17:53 +00:00
Dmitri Hrybenko
5bc75e821a Use a relative path for the in-tree symlink
Swift SVN r24953
2015-02-04 11:17:52 +00:00
Dave Abrahams
f16398c6db [stdlib] Clean up unintentionally committed dump()s
Swift SVN r24937
2015-02-04 03:21:18 +00:00
Dave Abrahams
ed8c302a93 [stdlib] Move tests that challenge a debug compiler
...into the validation suite.  This is the wrong solution but at least
the bots will continue to run all the tests and we won't regress.

Swift SVN r24934
2015-02-04 01:53:14 +00:00
Joe Pamer
9c2bc50acd In some cases, the same type error will result in different diagnostics being emitted between ARM and x86 targets.
Addressing rdar://problem/19434979 will allow us to swizzle expected errors based on build configuration options,
but until I can push that change we should generalize a few of the expected errors in the FixedPointDiagnostics test,
and re-enable the test on ARM.

Swift SVN r24910
2015-02-03 00:35:09 +00:00
Dmitri Hrybenko
9ade11ae39 XFAIL FixedPointDiagnostics.swift.gyb on armv7 in addition to arm64
<rdar://problem/19677545> Type checker diagnostics differ between
platforms for "var a: UInt8 = -(1)"

Swift SVN r24891
2015-02-02 07:14:36 +00:00
Dmitri Hrybenko
3407325ad4 XFAIL FixedPointDiagnostics.swift.gyb for arm64 because of:
<rdar://problem/19677545> Type checker diagnostics differ between
platforms for "var a: UInt8 = -(1)"

Swift SVN r24884
2015-02-01 06:05:48 +00:00
Dmitri Hrybenko
8ab8730f73 tests: update CoreAudio test for 32-bit iOS simulator
Swift SVN r24845
2015-01-30 05:10:32 +00:00
Dmitri Hrybenko
cc12389c2e tests: update CoreAudio test for 32-bit iOS simulator
Swift SVN r24844
2015-01-30 05:07:03 +00:00
Dmitri Hrybenko
1ca5bc414e stdlib: add an overlay for AudioBufferList
AudioBufferList contains a fake flexible array member, and is not
imported in a useable way.

rdar://18536929

Swift SVN r24843
2015-01-30 04:17:49 +00:00
Dmitri Hrybenko
203175909d StdlibUnittest: add a command line option to run specific tests
rdar://19572835

Swift SVN r24841
2015-01-30 04:17:44 +00:00
Dmitri Hrybenko
f4e35f90eb stdlib: remove Unsafe[Mutable]Pointer.null()
This API is redundant with nil literals and the default initializer.

rdar://19159145

Swift SVN r24796
2015-01-28 08:42:28 +00:00
Dmitri Hrybenko
b7e61965eb Remove redundant test
Swift SVN r24696
2015-01-24 00:12:21 +00:00
Dmitri Hrybenko
cb2870c230 Update Unicode data files to 7.0.0
rdar://17561742

Swift SVN r24692
2015-01-23 22:17:45 +00:00
Dmitri Hrybenko
7209392bb4 stdlib/Unicode: fix encoding U+20000 and higher to UTF-16
UTF16.{leadSurrogate,trailSurrogate} were converting intermediate
results to UInt16 too soon, causing a trap on U+20000 and higher.

rdar://19156359

Swift SVN r24678
2015-01-23 04:47:02 +00:00
Dmitri Hrybenko
3087d186cb tests: use a more appropriate test name and remove a redundant test
Swift SVN r24676
2015-01-23 03:29:31 +00:00
Dmitri Hrybenko
bbf79427ac stdlib: remove bitwise operations on Bool
Bitwise operations on Bool are redundant with other logic operations
that stdlib already provides.  The only reason to have them was to avoid
branching in the short-circuiting && and ||.

rdar://19340952

Surprisingly, replacing & and | in the standard library with && and ||
brought performance improvements and no significant performance
regressions:

RecursiveOwnedParameter 1.14
SelectionSort 1.19

Swift SVN r24674
2015-01-23 03:09:55 +00:00
Dmitri Hrybenko
2d12d510f2 Lowercase the first character in compiler diagnostics for consistency
Swift SVN r24634
2015-01-22 06:19:14 +00:00
Dmitri Hrybenko
9257f00d27 Update validation tests for compiler changes
Swift SVN r24633
2015-01-22 06:03:46 +00:00
Maxwell Swadling
007e94c571 [stdlib] updated error message in validation tests
Swift SVN r24616
2015-01-21 23:35:56 +00:00