Commit Graph

184973 Commits

Author SHA1 Message Date
Saleem Abdulrasool
e4a6190fd4 tests: add a new test for the ClangImporter
Add a test case for shadowing definitions that are often used for
retraoctive aliasing and forward compatibility.
2025-06-09 14:46:30 -07:00
Hamish Knight
8f4fbe3d9a [cmake] Remove remaining XCODE checks
I missed these when ripping out support for CMake Xcode project
generation.
2025-06-09 22:16:12 +01:00
QuietMisdreavus
0cc46765ec [SymbolGraphGen] distinguish between headers of the same name in different modules (#82112)
Resolves rdar://152676102

In Objective-C, it's reasonable to sort extensions of your dependency's
types into headers that match the name of that type. However, this runs
into a bug in SymbolGraphGen when it comes time to generate Swift symbol
graphs for that Objective-C code: At the moment, it only differentiates
between modules based on their base name, regardless of their parent
modules (if any). This causes these extensions to be incorrectly sorted
into the _extending module's_ symbol graph, rather than in an extension
symbol graph where it can be displayed with the _extended module_. When
processed with Swift-DocC, it would cause these symbols to disappear.

This PR updates the `areModulesEqual` function used by the
`SymbolGraphASTWalker` to consider the fully-qualified module name for
comparisons, rather than just the module's base name, causing situations
like the test's `Dependency.DependencyClass` and
`HeaderCollision.DependencyClass` to be properly distinguished from each
other.
2025-06-09 15:11:31 -06:00
Ian Anderson
034bfa1bea Merge pull request #82094 from ian-twilightcoder/builtin-float-embedded
[embedded][overlay] _Builtin_float and Synchronization cannot be imported in embedded Swift mode
2025-06-09 13:45:43 -07:00
Sam Khouri
5b4016ef36 Tests: enable Swift PM tests in Windows toolchain build
Enable the SwiftPM tests in the WIndows toolchain build to get extra
confidence the change did not introduce any regression on the Windows
platform.
2025-06-09 16:03:32 -04:00
Hamish Knight
92a5c00726 [test] Add a few more known type-checker crashers 2025-06-09 20:03:28 +01:00
Saleem Abdulrasool
1d4e9d0446 Merge pull request #81906 from compnerd/sappy
update_checkout: bump s-a-p to 1.5.1
2025-06-09 10:40:43 -07:00
Stephen Canon
c30fc23013 Stop testing FP16 assembly codegen for now (#82045)
Older iOS / watchOS targets do not default to having armv8.2 FP16 enabled, so FileCheck was failing when building for those because we didn't have the "right" assembly pattern. Stop testing Float16 compare codegen for now. I'll restore it with an IR test instead of assembly.

Resolves <rdar://152418752>
2025-06-09 13:35:09 -04:00
Valeriy Van
b1082d400f Update stdlib/public/core/Span/RawSpan.swift
Co-authored-by: Guillaume Lessard <glessard@tffenterprises.com>
2025-06-09 20:14:46 +03:00
Valeriy Van
e49050a42a Update stdlib/public/core/Span/RawSpan.swift
Co-authored-by: Guillaume Lessard <glessard@tffenterprises.com>
2025-06-09 20:14:25 +03:00
Evan Wilde
66a4e52a87 Add missing symbols for Fedora41
Fixing the linux symbol check to unblock nightly packages.
2025-06-09 09:33:53 -07:00
Philippe Hausler
694aebb1fb Add an additional case for clocks to sleep with a wallclock deadline (#79139)
This only modifies the runtime function `swift_task_enqueueGlobalWithDeadline` to take new clock primitive to
interoperate with existing dispatch wall clock values.
2025-06-09 09:01:27 -07:00
Qiongsi Wu
1b003b2c51 Revert "[Dependency Scanning] Update Uses of ModuleDeps::ClangModuleDeps #81243" (#81658)
This reverts commit 024dbd040f, reversing
changes made to a08b1cbb1d.

The commit did not solve the fundamental issue we need to handle and is
no longer necessary.

rdar://144794793

<!--
If this pull request is targeting a release branch, please fill out the
following form:

https://github.com/swiftlang/.github/blob/main/PULL_REQUEST_TEMPLATE/release.md?plain=1

Otherwise, replace this comment with a description of your changes and
rationale. Provide links to external references/discussions if
appropriate.
If this pull request resolves any GitHub issues, link them like so:

  Resolves <link to issue>, resolves <link to another issue>.

For more information about linking a pull request to an issue, see:

https://docs.github.com/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue
-->

<!--
Before merging this pull request, you must run the Swift continuous
integration tests.
For information about triggering CI builds via @swift-ci, see:

https://github.com/apple/swift/blob/main/docs/ContinuousIntegration.md#swift-ci

Thank you for your contribution to Swift!
-->
2025-06-09 08:36:35 -07:00
Adrian Prantl
e84d5609ba Merge pull request #82073 from adrian-prantl/152743797
[RemoteInspection] Add a hook to process addresses before converting
2025-06-09 08:11:02 -07:00
Valeriy Van
83d3d4b3cb Fix doc comment 2025-06-09 18:01:36 +03:00
Valeriy Van
1c0306871c Revert "Rename parameter count => byteCount to make signature match doc comment and match other methods"
This reverts commit 4129383ba7.
2025-06-09 17:59:13 +03:00
Hamish Knight
d3abee7e96 [test] Require asserts for all compiler_crashers_2 tests
These contain a mix of crashers that may or may not crash under
non-asserts builds, avoid testing them for non-asserts builds. When
fixed, they'll receive non-assert coverage.
2025-06-09 12:40:34 +01:00
eeckstein
a40a7be694 Merge pull request #82090 from valeriyvan/typos
Fix some typos in SwiftCompilerSources/Sources
swift-DEVELOPMENT-SNAPSHOT-2025-06-09-a
2025-06-09 13:23:04 +02:00
Allan Shortlidge
53c4566069 Merge pull request #82098 from tshortli/revert-availability-tests-move
Revert "Move some availability tests into a new test/Availability directory"
2025-06-09 03:11:31 -07:00
Valeriy Van
43ead66f42 Fix doc comment 2025-06-09 11:56:45 +03:00
Valeriy Van
4129383ba7 Rename parameter count => byteCount to make signature match doc comment and match other methods 2025-06-09 11:56:06 +03:00
Valeriy Van
505d55c4d1 Add type parameter to make code match doc comment 2025-06-09 11:54:44 +03:00
Pavel Yaskevich
a5d92bc346 Merge pull request #82053 from xedin/rdar-150689994
[Diagnostics] Correctly diagnose situations when immutable value is passed to `inout` parameter
2025-06-09 00:12:13 -07:00
eeckstein
e79c9399d5 Merge pull request #82068 from eeckstein/fix-mpo2
MandatoryPerformanceOptimizations: only set the `[perf_constraint]` flag for callees of performance constraint functions
2025-06-09 08:16:53 +02:00
Allan Shortlidge
de1017fef4 Revert "Move some availability tests into a new test/Availability directory"
This reverts commit 9c01ee2c1b.
2025-06-08 22:22:41 -07:00
Konrad `ktoso` Malawski
21291a41bd Merge pull request #82009 from ktoso/wip-fix-computed-variables-arm64-protocol-dist 2025-06-09 12:14:37 +09:00
Daniel Rodríguez Troitiño
80e06b6100 [test] Compiler crasher only seem to happen in asserts mode (#82095)
6a33401772c7458.swift doesn't seem to crash in non-asserts mode, so mark
is as requiring asserts so it does not fail when building for
non-asserts.
2025-06-08 19:06:15 -07:00
Saleem Abdulrasool
33a324eba3 Merge pull request #81840 from compnerd/aliases
ClangImporter: enhance the importer to alias declarations
2025-06-08 18:07:05 -07:00
Ben Barham
0afeafac37 Merge pull request #82071 from bnbarham/pass-through-toolchain-version
[Build] Pass the toolchain version through to Swift's compilation
2025-06-08 17:17:59 -07:00
Ian Anderson
8bbee17b88 [embedded][overlay] _Builtin_float and Synchronization cannot be imported in embedded Swift mode
The _Builtin_float and Synchronization modules are getting the SDK_NAME encoded in their embedded modules, preventing them from being used outside of macOS in embedded mode.
2025-06-08 13:53:23 -07:00
Saleem Abdulrasool
c66d43e1c5 ClangImporter: enhance the importer to alias declarations
Import simple CPP macro aliases as aliases in Swift. Extend the macro
importer to import the following construct:

  ```
  #define alias aliasee
  ```

as the following Swift construct:

  ```
  @_transparent @inline(__always)
  var alias: type(of: aliasee) {
    aliasee
  }
  ```

This improves the QoI for Windows where there is a universal define
(`UNICODE`) which normally is used for translating APIs between ANSI and
Unicode variants, e.g.:

  ```
  #if defined(UNICODE)
  #define MessageBox MessageBoxW
  #else
  #define MessageBox MessageBoxA
  #endif
  ```

Global variables which are non-const also have a setter synthesized:

  ```
  @_transparent @inline(__always)
  var alias: type(of: aliasee) {
    get { return aliasee }
    set { aliasee = newValue }
  }
  ```
2025-06-08 12:45:40 -07:00
Guillaume Lessard
2afb6b5012 Merge pull request #82077 from glessard/issue81931
[stdlib] fix utf8Span accessors for small strings
swift-DEVELOPMENT-SNAPSHOT-2025-06-08-a
2025-06-08 03:10:15 -07:00
Valeriy Van
761bee9d09 Fix typo in func replaceOpenedArchetypeInSubstituations -> replaceOpenedArchetypeInSubstitutions 2025-06-08 11:30:04 +03:00
Valeriy Van
dd2468cf58 Fix typo in local var 2025-06-08 11:27:30 +03:00
Valeriy Van
8a0c1db164 Fix typo in property allContainedAddresss -> allContainedAddresses 2025-06-08 11:26:01 +03:00
Valeriy Van
949c2bad67 Fix some typos in SwiftCompilerSources/Sources 2025-06-08 11:22:45 +03:00
Valeriy Van
c14699310f Fix typo (#82052) 2025-06-07 23:16:43 -04:00
Slava Pestov
34e6473032 Merge pull request #82070 from slavapestov/test-rdar152700122
Add regression test for rdar://152700122
2025-06-07 18:09:19 -04:00
Saleem Abdulrasool
6c9a8b4033 Merge pull request #82072 from compnerd/pre-special
Runtimes: allow enabling prespecialization and library evolution
2025-06-07 14:55:15 -07:00
Meghana Gupta
74e4c2e597 Downgrade use of @lifetime outside stdlib as a warning 2025-06-07 12:49:08 -07:00
Meghana Gupta
dcf072f9d0 Introduce a new suppressible experimental feature to guard @_lifetime 2025-06-07 12:49:07 -07:00
Meghana Gupta
0dfa1fc312 Update spelling for representing lifetime dependencies to @_lifetime 2025-06-07 12:49:07 -07:00
Meghana Gupta
44e05fa858 [NFC] Update tests and diagnostics 2025-06-07 12:49:01 -07:00
Ben Barham
d14e2ef57c Merge pull request #82088 from bnbarham/missing-doc-files
[Doc] Add missing diagnostic groups
2025-06-07 11:14:05 -07:00
Ben Barham
b3dd0ac2fa [Doc] Add missing diagnostic groups
These were meant to be part of #82002, but forgot to add them.
2025-06-07 11:13:16 -07:00
Saleem Abdulrasool
6bef9e9741 Merge pull request #82074 from etcwilde/ewilde/shorten-command-line-lenghts
Shorten command line lengths
2025-06-07 08:13:02 -07:00
Guillaume Lessard
694e94b360 [test] remove repetitions 2025-06-07 07:48:34 -07:00
Guillaume Lessard
c7324389d9 [stdlib] fix small string usage for Substring.utf8Span 2025-06-07 07:48:33 -07:00
Guillaume Lessard
8a2ff96521 [test] UTF8Span from inline-stored Substring instances 2025-06-07 07:48:33 -07:00
Guillaume Lessard
83edacbcc6 [stdlib] fix small-string usage for String.utf8Span 2025-06-07 07:48:33 -07:00