Commit Graph

21434 Commits

Author SHA1 Message Date
Dmitri Hrybenko
f183e493bf stdlib/bridging: bridgeFromObjectiveC() can fail to bridge the Objective-C
object to the desired type.  Model this with an optional return type.


Swift SVN r18077
2014-05-14 19:49:22 +00:00
Dave Abrahams
aceb11edb1 [stdlib] bridgeFromObjectiveC for String
Seemed pretty obvious so I just did it.

Swift SVN r18073
2014-05-14 16:44:49 +00:00
Dave Abrahams
a8bbc4c89b [stdlib] String internal API review changes
I had to XFAIL test/ClangModules/cf.swift, which is failing for reasons
I can't understand.  <rdar://problem/16911496>

Swift SVN r18071
2014-05-14 14:18:52 +00:00
Dmitri Hrybenko
eb9c3a406d stdlib/runtime: implement bridgeFromObjectiveC()
Swift SVN r18070
2014-05-14 13:40:46 +00:00
Ted Kremenek
9eea282719 Switch range operators ".." and "...".
- 1..3 now means 1,2
- 1...3 now means 1,2,3

Implements <rdar://problem/16839891>

Swift SVN r18066
2014-05-14 07:36:00 +00:00
Argyrios Kyrtzidis
33e5c2df71 [stdlib] Replace the dashes in the comment with parens, as suggested by DaveA.
Swift SVN r18060
2014-05-14 04:34:27 +00:00
Argyrios Kyrtzidis
b70c125c88 [stdlib] Remove non-ascii dash character from a comment.
Swift SVN r18058
2014-05-14 03:06:58 +00:00
Enrico Granata
8478cd9905 Add a mirror for NSSet
Part of the playgrounds effort



Swift SVN r18038
2014-05-13 23:20:32 +00:00
Joe Groff
edb2c0c411 Runtime: Handle dynamic casts to AnyObject.
We can't do existential casts generally yet, but we can at least handle class-to-AnyObject casts, which come up in array bridging. Fixes <rdar://problem/16898943>.

Swift SVN r18033
2014-05-13 22:31:23 +00:00
Dave Zarzycki
03d8c146e5 Heap: walk the threads when running leaks and ignore the per-thread caches
Swift SVN r18030
2014-05-13 22:09:56 +00:00
Dave Zarzycki
49a5348df2 Heap: DaveP says that this is not needed
Swift SVN r18029
2014-05-13 22:09:49 +00:00
Dave Abrahams
0222047dda [stdlib] A couple of Array changes...
...that managed to sneak out of my last commit.

Swift SVN r18028
2014-05-13 22:03:57 +00:00
Dave Abrahams
34edde40ca [stdlib] Array bridging/bridge-cast entry points
Still needs lots of testing, but at least we have the code in and
building, finally.

Swift SVN r18027
2014-05-13 21:33:40 +00:00
Dave Zarzycki
a8d814cfca Heap: Make leaks and friends more accurate
Swift SVN r18014
2014-05-13 18:15:19 +00:00
Dave Zarzycki
699ccd21a7 Heap: dead code deletion
Swift SVN r18013
2014-05-13 18:15:16 +00:00
Doug Gregor
d5a9c2ab94 Only supersede initializers with other imported initializers when the types match.
This fixes a case where the Swift-variadic and C-varargs versions of
various initializers were superseding each other
<rdar://problem/16801456>.

It also uncovered some more cases where we weren't getting quite the
right semantics for factory-methods-as-initializers, which are also
fixed here.

Swift SVN r18010
2014-05-13 16:49:39 +00:00
Dave Zarzycki
cf4fbe33f5 Heap: Checkpoint leaks/heap/vm_map support
Huge allocation leaks are detected correctly.
Tiny allocation leaks are problematic, both false positive and false negative.

For example:

leaks Report Version:  2.0
Process 73345: 4980 nodes malloced for 1677 KB
Process 73345: 1 leak for 1048576 total leaked bytes.
Leak: 0x10aed0000  size=1048576  zone: SwiftZone_0x10adc35d8

Swift SVN r18007
2014-05-13 16:28:44 +00:00
Dmitri Hrybenko
de9a0c8ff0 stdlib/printing: remove ReplPrintable protocol
It is replaced by debugPrint() family of functions, that are called by REPL.

There is a regression in printing types that don't conform to Printable, this
is tracked by rdar://16898708


Swift SVN r18006
2014-05-13 16:22:56 +00:00
Dmitri Hrybenko
ed68ba833f stdlib/printing: add Streamable conformance to CString, and DebugPrintable
conformances to String and CString


Swift SVN r18003
2014-05-13 13:54:43 +00:00
Dmitri Hrybenko
4f921ad60b Unbreak iOS build
Swift SVN r18002
2014-05-13 13:27:39 +00:00
Dmitri Hrybenko
2cc8fe40d4 stdlib/printing: replace four printing systems with one new one
The old ones were:

- print/println
- printAny
- printf
- Console

The new printing story is just print/println.  Every object can be printed.
You can customize the way it is printed by adopting Printable protocol.  Full
details in comments inside stdlib/core/OutputStream.swift.

Printing is not completely finished yet.  We still have ReplPrintable, which
should be removed, string interpolation still uses String constructors, and
printing objects that don't conform to Printable will result in printing
mangled names.


Swift SVN r18001
2014-05-13 13:07:59 +00:00
Doug Gregor
795f568898 Start diagnosing the use of '`' rather than '#', with a Fix-It.
<rdar://problem/16891828>.

Swift SVN r17982
2014-05-13 00:03:05 +00:00
Doug Gregor
1efd9fba5b Start accepting '#' in addition to '`' to mark a keyword argument <rdar://problem/16891828>.
Update the standard library, tests, diagnostics, and Fix-Its.

Swift SVN r17981
2014-05-13 00:03:04 +00:00
Doug Gregor
93f7ac2e48 Fix the name of the initializer for initWithObjectsAndKeys.
Swift SVN r17974
2014-05-12 23:21:44 +00:00
Doug Gregor
73528dc0e0 Enable importing factory methods as initializers by default.
Finishes <rdar://problem/16509024>.

Swift SVN r17972
2014-05-12 23:01:20 +00:00
Ted Kremenek
fad874708e Adjust test cases.
Swift SVN r17964
2014-05-12 22:01:52 +00:00
Dave Zarzycki
806d2decd2 Runtime: Fix an oversight with the previous gmalloc fix
Swift SVN r17951
2014-05-12 19:30:17 +00:00
Dave Zarzycki
504701bda5 Runtime heap: defer to gmalloc when gmalloc is loaded
<rdar://problem/13318927> jDisable allocation cache when using gmalloc

Swift SVN r17950
2014-05-12 19:24:03 +00:00
Dave Zarzycki
f618a98ec4 Runtime: Remove swift_getClassMetadata()
Greg's arclite hack is much better. See also: <rdar://problem/16735599>

Swift SVN r17945
2014-05-12 18:24:24 +00:00
Ted Kremenek
49d4fca14d Rename UTF16Scalars to UnicodeScalarView.
Implements <rdar://problem/16821900>.

Swift SVN r17899
2014-05-11 23:51:07 +00:00
Dmitri Hrybenko
2dc5ed55e0 runtime: add hacks for stdlib: runtime calls to perform casts to existential
types that are protocols


Swift SVN r17866
2014-05-11 01:26:04 +00:00
Jordan Rose
d410bd0acd [CMake] Re-enable -autolink-force-load to cause the buildbot to fail.
I can't reproduce this locally, so I'll need to run this on the buildbot
and inspect the output.

Swift SVN r17795
2014-05-09 19:11:11 +00:00
Dave Zarzycki
b92b64617b Heap: avoid reentrancy when Instruments enables ObjectAlloc
We need a custom but simple map table for two reasons:
1) To precisely control our allocations to avoid reentrancy via Instruments.
2) To prepare for out-of-process introspection via Mach VM calls.

This fixes: <rdar://problem/16718231> Swift allocator must not call malloc nor global operator new

Swift SVN r17769
2014-05-09 08:56:37 +00:00
Greg Parker
fba2e4bd7c Add overlay covers for DISPATCH_QUEUE_CONCURRENT and DISPATCH_SOURCE_TYPE_*.
Swift SVN r17766
2014-05-09 07:06:10 +00:00
Argyrios Kyrtzidis
786ab593dd Revert "[CMake] Build the SDK overlays with -autolink-force-load."
This reverts commit r17752, because it caused link failures of Interpreter and stdlib tests.

Swift SVN r17758
2014-05-09 04:02:54 +00:00
Jordan Rose
20fb4513e2 [CMake] Fix dependencies for swiftDispatch.
Without proper dependencies among the overlays, we may try to load an
outdated overlay module while building another overlay.

Swift SVN r17753
2014-05-09 01:20:34 +00:00
Jordan Rose
90c5fbe029 [CMake] Build the SDK overlays with -autolink-force-load.
Final part of <rdar://problem/16829587>

Swift SVN r17752
2014-05-09 01:20:33 +00:00
Argyrios Kyrtzidis
4f0776936a [stdlib] Dispatch depends on Darwin.
Swift SVN r17749
2014-05-09 01:04:44 +00:00
Dave Zarzycki
06731bbe21 Heap feedback: rename _swift_zone_init_ to _swift_zone_initImpl
Swift SVN r17729
2014-05-08 23:20:49 +00:00
Dave Zarzycki
8b0c9d4e74 Heap: Let Instruments ensure that the heap is setup correctly at launch
Swift SVN r17723
2014-05-08 23:12:57 +00:00
Joe Groff
1dce36edd2 Make 'T.self is U.Type' work.
Fix up all of type-checking, SILGen, IRGen, and the runtime to support checked casts of metatypes. <rdar://problem/16847453>

Swift SVN r17719
2014-05-08 22:55:14 +00:00
Enrico Granata
720478bf96 Add a URL case to QuickLookObject
This is to be used by playgrounds to provide a better sidebar representation of web pages than simply showing the URL text

Part of rdar://16799088



Swift SVN r17710
2014-05-08 19:15:36 +00:00
Greg Parker
f1d020e11a <rdar://16848707> Add Dispatch overlay with covers for some libdispatch macros.
Swift SVN r17693
2014-05-08 09:47:00 +00:00
Ted Kremenek
05e9efb093 Don't compile XCTest overlay as being Application Extension safe.
Swift SVN r17682
2014-05-08 04:49:00 +00:00
Dmitri Hrybenko
63c5a145b4 stdlib: factor out _SwiftNSFastEnumerationState initialization
Swift SVN r17624
2014-05-07 12:54:17 +00:00
Dave Abrahams
3606513c36 [stdlib] Factor out _fixLifetime
Apparently Builtin.fixLifetime isn't yet respected
(<rdar://problem/16464507>) and calls to that and swift_keepAlive were
getting scattered around randomly.  Let's have a convenient library
function instead.

Swift SVN r17493
2014-05-05 23:21:47 +00:00
Dave Abrahams
7f29548040 [stdlib] Re-alphabetize CMakeLists.txt
Swift SVN r17489
2014-05-05 21:24:45 +00:00
Dave Abrahams
23f98db278 [stdlib] A .utf16 property for String
Also, test the .utf8 property

Swift SVN r17488
2014-05-05 21:23:48 +00:00
Dave Abrahams
c20f08c596 [stdlib] Don't bake refcounting details into apps
DaveZ says: In the future we're likely to store "associated objects,"
which will make inlining the introspection of the reference count
problematic.

Swift SVN r17481
2014-05-05 19:26:43 +00:00
Enrico Granata
46780871a8 Add a separate .Sprite quickLookObject type for SpriteKit objects
We still want to send out image data for those, but UI consumers need to be able to differentiate - should they so desire - a true image from a software sprite rendered in pictorial form

Part of the fix for rdar://16806238



Swift SVN r17471
2014-05-05 18:17:12 +00:00