Egor Zhdan
bfe72b4be9
Merge pull request #75589 from swiftlang/egorzhdan/linux-libcxx-interop
...
[cxx-interop] Allow compiling with libc++ on Linux
2024-08-09 13:42:29 +01:00
Egor Zhdan
059f0f97d1
[cxx-interop] Allow compiling with libc++ on Linux
...
This makes sure that Swift respects `-Xcc -stdlib=libc++` flags.
Clang already has existing logic to discover the system-wide libc++ installation on Linux. We rely on that logic here.
Importing a Swift module that was built with a different C++ stdlib is not supported and emits an error.
The Cxx module can be imported when compiling with any C++ stdlib. The synthesized conformances, e.g. to CxxRandomAccessCollection also work. However, CxxStdlib currently cannot be imported when compiling with libc++, since on Linux it refers to symbols from libstdc++ which have different mangled names in libc++.
rdar://118357548 / https://github.com/swiftlang/swift/issues/69825
2024-08-08 16:24:58 +01:00
swift-ci
afbfba3fdc
Merge remote-tracking branch 'origin/main' into rebranch
2024-08-06 19:13:45 -07:00
Alex Hoppen
dcee673688
Merge pull request #74522 from mateusrodriguesxyz/trailing-comma
2024-08-06 18:51:18 -07:00
swift-ci
9e7bb3d1de
Merge remote-tracking branch 'origin/main' into rebranch
2024-08-06 14:34:29 -07:00
Sima Nerush
6400a294a8
Merge pull request #70227 from simanerush/same-element-requirements
...
[Requirement Machine] Implement same-element requirements.
2024-08-06 14:24:33 -07:00
Ben Barham
7bdf1e117e
Merge remote-tracking branch 'origin/main' into manually-merge-main-to-rebranch
...
Conflicts:
- `lib/PrintAsClang/PrintSwiftToClangCoreScaffold.cpp` not positive
what the cause here was, just took main.
2024-08-06 13:44:27 -07:00
Mateus Rodrigues
ac57e61278
Merge branch 'main' into trailing-comma
2024-08-06 09:34:43 -03:00
Doug Gregor
fef8782b5a
Merge pull request #75014 from DougGregor/swiftifconfig-build-configuration
2024-08-05 23:24:27 -07:00
Adrian Prantl
f0902a9163
Expose an ImportNonPublicDependencies LangOpt for LLDB (NFC).
...
This patch allows controlling the automatic import of private dependencies
separately from the DebuggerSupport option, which currently also triggers this
behavior. With explicit modules + precise compiler invocations LLDB is moving
towards no longer needing this behavior.
rdar://133088201
(cherry picked from commit a1ba7159e3 )
2024-08-05 12:53:43 -07:00
Doug Gregor
5c3b7777e7
Implement a SwiftIfConfig.BuildConfiguration that queries the ASTContext
...
This concrete implementation of the BuildConfiguration allows the use of
the SwiftIfConfig library's APIs where the build configuration comes from
the compiler itself.
2024-08-02 10:04:26 -07:00
swift-ci
68536b641d
Merge remote-tracking branch 'origin/main' into rebranch
2024-08-01 09:54:16 -07:00
Saleem Abdulrasool
8d9c5e178c
Merge pull request #75406 from z2oh/fix-sourcekitd-file-locks-windows
...
Fix sourcekitd persistent file-locks on Windows
2024-08-01 09:51:17 -07:00
swift-ci
000d7b0a4a
Merge remote-tracking branch 'origin/main' into rebranch
2024-07-30 11:16:40 -07:00
Joe Groff
d37ff048aa
Merge pull request #75560 from jckarter/disable-consuming-self-in-deinit
...
Disallow consuming `self` in a noncopyable `deinit` again.
2024-07-30 10:59:35 -07:00
swift-ci
87cda6a02d
Merge remote-tracking branch 'origin/main' into rebranch
2024-07-30 09:18:46 -07:00
Andrew Trick
22f01a956a
[SwiftCompilerSources] add BridgedOStream and debugLog().
...
So we can trace optimizer passes using the same output stream as the
C++ passes and don't get garbled output.
2024-07-29 21:25:43 -07:00
Joe Groff
de687db20f
Disallow consuming self in a noncopyable deinit again.
...
The changes to allow for partial consumption unintentionally also allowed for
`self` to be consumed as a whole during `deinit`, which we don't yet want to
allow because it could lead to accidental "resurrection" and/or accidental
infinite recursion if the consuming method lets `deinit` be implicitly run
again. This makes it an error again. The experimental feature
`ConsumeSelfInDeinit` will allow it for test coverage or experimentation
purposes. rdar://132761460
2024-07-29 21:20:14 -07:00
swift-ci
a5f512c84d
Merge remote-tracking branch 'origin/main' into rebranch
2024-07-29 20:34:51 -07:00
Kavon Farvardin
972373b129
NCGenerics: begin process of removing compat hack
...
The reverse-condfail workaround needs to be removed, and this is the
first step to allowing the stdlib to build with conditionally escapable
types.
resolves rdar://132453000
2024-07-29 17:27:17 -07:00
Jeremy Day
221c7039bd
Add explicit OpenSourcesAsVolatile option
2024-07-26 17:02:04 -07:00
Jeremy Day
a22419f1d0
Fix sourcekitd persistent file-locks on Windows
2024-07-23 09:59:41 -07:00
Mateus Rodrigues
e0d416cdab
Ungate accepted parts of SE439
2024-07-22 09:55:16 -03:00
swift-ci
d58bf03df8
Merge remote-tracking branch 'origin/main' into rebranch
2024-07-19 09:16:15 -07:00
Joe Groff
9f2ee07de8
Merge pull request #75334 from jckarter/extern-is-experimental
...
`@_extern` is an experimental feature.
2024-07-19 09:04:14 -07:00
Joe Groff
51829c17bf
@_extern is an experimental feature.
...
Mark it as such. rdar://132013078
2024-07-18 11:46:16 -07:00
swift-ci
49344c137d
Merge remote-tracking branch 'origin/main' into rebranch
2024-07-16 11:34:42 -07:00
Kavon Farvardin
1fa02fb0fe
Revert "NCGenerics: remove the reverse-condfail workaround"
...
This reverts commit 5b2f2cbfcf .
2024-07-16 08:10:00 -07:00
Holly Borla
dbda2738a6
[Features] Gate same-element requirements behind an experimental feature flag.
2024-07-15 10:19:32 -07:00
swift-ci
708aec7bba
Merge remote-tracking branch 'origin/main' into rebranch
2024-07-12 09:55:46 -07:00
Kavon Farvardin
4529f3b295
Merge pull request #75183 from kavon/remove-reverse-condfail-workaround
...
NCGenerics: remove the reverse-condfail workaround
2024-07-12 09:39:12 -07:00
swift-ci
31eba09b32
Merge remote-tracking branch 'origin/main' into rebranch
2024-07-11 21:14:02 -07:00
Allan Shortlidge
a8a1eb2666
Merge pull request #75182 from tshortli/warn-soft-deprecated
...
Introduce `-warn-soft-deprecated` option
2024-07-11 21:06:30 -07:00
Kavon Farvardin
5b2f2cbfcf
NCGenerics: remove the reverse-condfail workaround
...
This should no longer be needed, after having staged the first set of
changes in, as it was a temporary workaround.
resolves rdar://131560183
2024-07-11 14:30:27 -07:00
Allan Shortlidge
10d249b31a
Frontend: Introduce a -warn-soft-deprecated option.
...
This option should cause references to declarations that are deprecated in
future OS versions to be diagnosed.
2024-07-11 14:03:19 -07:00
swift-ci
f3edba0452
Merge remote-tracking branch 'origin/main' into rebranch
2024-07-11 12:15:10 -07:00
Mykola Pokhylets
816d62c972
Merge remote-tracking branch 'upstream/main' into mpokhylets/isolated-deinit
...
# Conflicts:
# include/swift/Basic/Features.def
# lib/SILGen/SILGenDestructor.cpp
# test/Concurrency/flow_isolation.swift
# test/abi/macOS/arm64/concurrency.swift
# test/abi/macOS/x86_64/concurrency.swift
2024-07-11 13:11:59 +02:00
Mykola Pokhylets
2cb7e8d7b8
Implemented suppressing isolated deinit for compatibility with older compiler versions
2024-07-11 13:09:08 +02:00
Ben Barham
2715d0e9d6
Merge branch 'main' into 20240710-main-to-rebranch
...
Conflicts:
- `test/Interop/Cxx/class/method/methods-this-and-indirect-return-irgen-itanium.swift`
previously fixed on rebranch, now fixed on main (slightly differently).
2024-07-10 20:42:09 -07:00
Ellie Shin
18681c43fb
Drop experimental prefixes from PackageCMO flags.
...
Deprecate experimental- flags with prompts to use the proper flags.
rdar://131498517
2024-07-10 16:19:16 -07:00
Allan Shortlidge
cf2c6ff1bb
Merge pull request #75094 from tshortli/baseline-more-features
2024-07-09 23:11:45 -07:00
Rintaro Ishizaki
fba8b10cda
Merge pull request #75115 from rintaro/basic-ondiscbuffer-cache
...
[Basic] Don't rewrite source buffer copy multiple times
2024-07-09 18:54:56 -07:00
Rintaro Ishizaki
90c2975d66
[Basic] Don't rewrite source buffer copy multiple times
...
The on-disc buffer file name was not recorded correctly.
rdar://130478685
2024-07-09 15:09:30 -07:00
Allan Shortlidge
d944488a86
AST: Promote NewCxxMethodSafetyHeuristics feature to baseline.
2024-07-09 14:29:31 -07:00
Allan Shortlidge
aab4f1051c
AST: Promote BodyMacros feature to baseline.
2024-07-09 14:29:30 -07:00
Allan Shortlidge
0ba007661a
AST: Promote BuiltinAddressOfRawLayout to baseline.
2024-07-09 14:29:30 -07:00
Allan Shortlidge
45f3e94b46
AST: Promote AssociatedTypeImplements feature to baseline.
2024-07-09 14:28:30 -07:00
Allan Shortlidge
b71e73d04c
AST: Promote RetroactiveAttribute feature to baseline.
2024-07-09 14:28:29 -07:00
Allan Shortlidge
e7ae787516
AST: Promote ConformanceSuppression feature to baseline.
2024-07-09 14:28:29 -07:00
Allan Shortlidge
b46f23b502
AST: Promote BitwiseCopyable feature to baseline.
2024-07-09 14:28:29 -07:00