Commit Graph

7248 Commits

Author SHA1 Message Date
Tim Kientzle
9debfbc08c Merge pull request #75607 from tbkka/tbkka-remotemirror-unsafecontinuation
[RemoteMirror] Handle UnsafeContinuation
2024-08-01 13:46:09 -07:00
Tim Kientzle
8935510bcc Do not test with back deployment since this is a new-ish feature area 2024-08-01 07:27:11 -07:00
Tim Kientzle
71f010ead4 Merge pull request #75516 from tbkka/tbkka-new-actor-reflection-test
New reflect_Actor test
2024-07-31 21:01:29 -07:00
Tim Kientzle
9e1dcd6c9f [RemoteMirror] Handle UnsafeContinuation
UnsafeContinuations can be stored in variables or properties,
so it's important for RemoteMirror to be able to at least minimally
recognize them.

This just treats an UnsafeContinuation as a refcounted pointer.
Which might be "good enough" for now.

Working towards rdar://110351406
2024-07-31 18:15:27 -07:00
Tim Kientzle
725dc3c011 Merge pull request #75587 from tbkka/tbkka-remotemirror-generic-depth
[RemoteMirror] Fix generic depth calculation
2024-07-31 17:56:27 -07:00
Tim Kientzle
47de3339bb Only run this test on suitably new systems 2024-07-31 15:25:11 -07:00
Tim Kientzle
039e78d31a [RemoteMirror] Fix generic depth calculation
The "generic depth" is used to match up generic type variables.
For example:
```
struct Foo<T> { // `T` at generic depth 0
  struct Bar {
    struct Baz<U> { // 'U' at generic depth 1
      ...
}}}
```

Note in the above that `Bar` is not counted in the
generic depth.  The previous logic did count `Bar` in
the generic depth calculation, leading to mismatches
when trying to associate references to generic variables.

This adds a new test with cases like the above and of course
corrects the calculation.

Resolves rdar://127450037
2024-07-31 07:08:08 -07:00
Erik Eckstein
221ac85216 tests: disable a test in execution/interpret-with-dependencies.swift because it fails on some CI jobs 2024-07-31 10:00:00 +02:00
LamTrinh.Dev
751a9d0127 Update reflect_multiple_types.swift
Adding comment for "// REQUIRES: reflection_test_support"
2024-07-29 23:12:12 +07:00
LamTrinh.Dev
a5b4f69f8e Update reflect_NSString.swift
Adding comment for "// REQUIRES: reflection_test_support"
2024-07-29 23:10:53 +07:00
LamTrinh.Dev
0d8d6070a7 Update reflect_NSSet.swift
Adding comment for "// REQUIRES: reflection_test_support"
2024-07-29 23:10:32 +07:00
LamTrinh.Dev
9ac94d3ffa Update reflect_NSNumber.swift
Adding comment for "// REQUIRES: reflection_test_support"
2024-07-29 23:10:13 +07:00
LamTrinh.Dev
ff63d2284e Update reflect_NSArray.swift
Adding comment for "// REQUIRES: reflection_test_support"
2024-07-29 23:09:15 +07:00
LamTrinh.Dev
b2f9976dd8 Update reflect_Enum_values_resilient.swift
Adding comment for "// REQUIRES: reflection_test_support"
2024-07-29 23:07:03 +07:00
LamTrinh.Dev
39224a1ebb Update reflect_Enum_values9.swift
Adding comment for "// REQUIRES: reflection_test_support"
2024-07-29 23:06:17 +07:00
LamTrinh.Dev
7c47570c63 Update reflect_Enum_values8.swift
Adding comment for "// REQUIRES: reflection_test_support"
2024-07-29 23:05:58 +07:00
LamTrinh.Dev
f3800be6d6 Update reflect_Enum_values7.swift
Adding comment for "// REQUIRES: reflection_test_support"
2024-07-29 23:05:37 +07:00
LamTrinh.Dev
f35c57e82b Update reflect_Enum_values6.swift
Adding comment for "// REQUIRES: reflection_test_support"
2024-07-29 23:05:17 +07:00
LamTrinh.Dev
baed1da4a9 Update reflect_Enum_values5.swift
Adding comment for "// REQUIRES: reflection_test_support"
2024-07-29 23:04:57 +07:00
LamTrinh.Dev
bf2f25cfa2 Update reflect_Enum_values4.swift
Adding comment for "// REQUIRES: reflection_test_support"
2024-07-29 23:04:36 +07:00
LamTrinh.Dev
aa0a602455 Update reflect_Enum_values3.swift
Adding comment for "// REQUIRES: reflection_test_support"
2024-07-29 23:04:15 +07:00
LamTrinh.Dev
cd14ab8e63 Update reflect_Enum_values2.swift
Adding comment for "// REQUIRES: reflection_test_support"
2024-07-29 23:03:54 +07:00
LamTrinh.Dev
450f1c6157 Update reflect_Enum_values11.swift
Adding comment for "// REQUIRES: reflection_test_support"
2024-07-29 23:02:12 +07:00
LamTrinh.Dev
a175465d5b Update reflect_Enum_values10.swift
Adding comment for "// REQUIRES: reflection_test_support"
2024-07-29 23:01:50 +07:00
LamTrinh.Dev
b81067d0b1 Update reflect_Enum_values.swift
Adding comment for "// REQUIRES: reflection_test_support"
2024-07-29 23:01:27 +07:00
LamTrinh.Dev
d3204c5433 Update reflect_Enum_value.swift
Adding comment for "// REQUIRES: reflection_test_support"
2024-07-29 23:00:42 +07:00
LamTrinh.Dev
a004b872c7 Update inherits_ObjCClasses.swift
Adding comment for "// REQUIRES: reflection_test_support"
2024-07-29 22:59:02 +07:00
LamTrinh.Dev
b9ec7744bf Update inherits_NSObject.swift
Adding comment for "// REQUIRES: reflection_test_support"
2024-07-29 22:58:24 +07:00
LamTrinh.Dev
6c2f3537fa Update functions_objc.swift
Adding comment for "// REQUIRES: reflection_test_support"
2024-07-29 22:57:54 +07:00
LamTrinh.Dev
999e287d99 Update existentials_objc.swift
Adding comment for "// REQUIRES: reflection_test_support"
2024-07-29 22:56:41 +07:00
LamTrinh.Dev
1684a50966 Update inherits_Swift.swift
Adding more comment for "UNSUPPORTED: asan".
2024-07-27 18:05:08 +07:00
LamTrinh.Dev
35c050df37 Update inherits_ObjCClasses.swift
Adding more comment for "UNSUPPORTED: asan".
2024-07-27 18:04:31 +07:00
LamTrinh.Dev
129126d5f1 Update inherits_NSObject.swift
Adding more comment for "UNSUPPORTED: asan".
2024-07-27 18:04:03 +07:00
LamTrinh.Dev
58ed9e7fd3 Update functions_objc.swift
Adding more comment for "UNSUPPORTED: asan".
2024-07-27 18:03:43 +07:00
LamTrinh.Dev
5db4317811 Update functions.swift
Adding more comment for "UNSUPPORTED: asan".
2024-07-27 18:03:18 +07:00
LamTrinh.Dev
971048907b Update existentials.swift
Adding more comment for "UNSUPPORTED: asan".
2024-07-27 17:59:08 +07:00
LamTrinh.Dev
86dc6271fe Update existentials_objc.swift
Adding more comment for "UNSUPPORTED: asan".
2024-07-27 17:55:48 +07:00
Tim Kientzle
cbd0c14407 New reflect_Actor test 2024-07-26 17:17:29 -07:00
Tim Kientzle
f73cfa7396 Reflection tests are incompatible with ASAN 2024-07-26 09:55:08 -07:00
Tim Kientzle
8d22ae449c More MPE improvements
This fills in a number of missing cases:
* MPEs with closure payloads
* MPEs with many non-payload cases
* MPEs with class existential payloads
* MPEs with existential metatype payloads

Resolves rdar://132270733
Resolves rdar://128705332
2024-07-23 16:08:57 -07:00
Nate Cook
846a861660 Improve RangeSet initialization performance (#75089)
When initializing a range set with a group of overlapping, identical,
or empty ranges, the initializer can exhibit poor performance due
to removing the unneeded ranges during processing. This change uses
a partitioning scheme instead, only removing the unnecessary ranges
at the end of initialization.
2024-07-12 15:01:38 -05:00
Alexander Cyon
4a2942bb4e Fix typos in: cmake, tools, utils, unittests, validation-test
Co-authored-by: Saleem Abdulrasool <compnerd@compnerd.org>
2024-07-12 02:34:00 +03:00
Nate Cook
6d4f4a45cf Improve RangeSet union performance (#74963) 2024-07-08 09:00:37 -05:00
Kavon Farvardin
ed0413d34d Merge pull request #74863 from kavon/re-enable-test
Revert "Disable test Runtime/issue-51181.swift"
2024-07-03 20:30:46 -07:00
Slava Pestov
7a8a56254a AST: Fix substitution map composition edge case
Adding `T == Int` to

    G1 := <T where T: Equatable>

gives us

    G2 := <T where T == Int>

which means that if I have this substitution map for G2:

    S2 := { Int }

then `SubstitutionMap::get(G1, S2)` should give me this substitution map
for G1:

    S2 := { Int, [Int: Equatable] }

But it didn't, instead returning a substitution map with an invalid
conformance.

The problem is that local conformance lookup alone cannot recover
`[Int: Equatable]` in this case, because there is no "concrete
conformance requirement" `[T == Int: Equatable]` recorded anywhere
in G2.

This is of course a legacy of the GenericSignatureBuilder. It would have
been better to not drop conformance requirements made concrete. But oh
well.

Fixes https://github.com/swiftlang/swift/issues/74465
Fixes rdar://130404629.
2024-07-01 14:15:41 -04:00
Kavon Farvardin
6e1bd47d61 Revert "Disable test Runtime/issue-51181.swift"
This reverts commit dfcdf16a72.
2024-07-01 09:15:07 -07:00
Hamish Knight
23a85d19ed Merge pull request #74387 from hamishknight/pattern-resolution
[Sema] Requestify pattern resolution
2024-06-20 21:07:07 +01:00
Greg Titus
a3ab8bbe70 Merge pull request #74540 from gregomni/issue-46000
[Sema] Remove external dependencies and move test from validation_test to test.
2024-06-18 22:29:50 -07:00
Greg Titus
18392fd576 Remove external dependencies and move from validation_test to test. 2024-06-18 19:01:08 -07:00
Slava Pestov
cb1605f26f Merge pull request #74414 from slavapestov/pack-element-var
SIL: Fix lowering for 'var's whose types contain local archetypes
2024-06-18 17:14:50 -04:00