Doug Gregor
5b2520e379
Remove IfConfigDecl from the AST
...
The swift-syntax tree retains information about the parsed #if
regions. Drop it from the semantic AST.
2024-09-18 20:51:54 -07:00
Ben Barham
a7b50f357f
Merge remote-tracking branch 'origin/main' into manual-main-merge
...
Conflicts:
- `lib/Driver/ToolChains.cpp` conflicting with the `addAllArgs` rename
for multiple options
2024-09-16 13:53:18 -07:00
Meghana Gupta
e61d87c01c
Add support for parsing @lifetime attribute to specify lifetime dependencies on declarations
2024-09-09 22:02:42 -07:00
Alexis Laferrière
c70162c703
Merge branch 'main' into public-module-name
2024-09-05 20:02:07 -07:00
swift-ci
da55e84c74
Merge remote-tracking branch 'origin/main' into rebranch
2024-09-05 15:35:33 -07:00
Alexis Laferrière
c60fea3aac
Sema: Use clearer param name in getPublicModuleName
...
Use onlyIfImported instead of mustBeVisible.
2024-09-05 12:45:13 -07:00
Alexis Laferrière
214da85183
Sema: Keep public module name in ModuleDecl
2024-09-04 16:20:12 -07:00
Alejandro Alonso
46a4d56c2b
Bring back the isOpaqueType parameter for deserialization
2024-09-04 15:13:49 -07:00
Alejandro Alonso
15db739055
Serialize IntegerType
...
Use BCBlob
2024-09-04 15:13:47 -07:00
Alejandro Alonso
e0f2b812e8
Add serialization and parser tests for SIL
2024-09-04 15:13:47 -07:00
Slava Pestov
b9b6bb7b69
AST: Introduce new kind of sugared GenericTypeParamType
...
This one just stores an identifier instead of a declaration.
2024-09-04 15:13:46 -07:00
Slava Pestov
1ff1b9479a
AST: Pick off some usages of GenericTypeParamType::getDecl()
2024-09-04 15:13:46 -07:00
Alejandro Alonso
f4f60f4344
Remove Value requirement Add GenericTypeParamKind
2024-09-04 15:13:43 -07:00
Alejandro Alonso
75c2cbf593
Implement value generics
...
Some requirement machine work
Rename requirement to Value
Rename more things to Value
Fix integer checking for requirement
some docs and parser changes
Minor fixes
2024-09-04 15:13:25 -07:00
swift-ci
50d4698d95
Merge remote-tracking branch 'origin/main' into rebranch
2024-09-03 20:36:09 -07:00
Slava Pestov
e3ff6f0697
AST: Fiddle with GenericEnvironment::forOpenedExistential() again
2024-09-03 17:31:26 -04:00
swift-ci
e27edcada1
Merge remote-tracking branch 'origin/main' into rebranch
2024-08-21 16:49:14 -07:00
Slava Pestov
ae77d6f0c1
AST: Replace one-off predicates with SubstitutionMap::getRecursiveProperties()
2024-08-21 13:19:10 -04:00
swift-ci
1450e0889d
Merge remote-tracking branch 'origin/main' into rebranch
2024-08-20 19:16:30 -07:00
Slava Pestov
5577f27661
AST: Opened existential environments store outer substitutions
2024-08-20 16:54:51 -04:00
Ben Barham
05d62155f8
Merge remote-tracking branch 'origin/main' into manual-main-20240814
...
Conflicts:
- `include/swift/Localization/LocalizationFormat.h`
- `lib/ClangImporter/SwiftLookupTable.cpp`
- `lib/ClangImporter/SwiftLookupTable.h`
- `lib/Serialization/ModuleFormat.h`
- `lib/Serialization/Serialization.cpp`
All from the hash changes being added to main. Took main except for the
lookup table minor version, which needs to be bumped still because of
other changes.
2024-08-14 19:21:52 -07:00
Ben Barham
273d7ee79d
[Serialization] Do not serialize unstable hashes
...
https://github.com/llvm/llvm-project/pull/96282 changed
`get_execution_seed` to be non-deterministic. Use stable hashes instead.
2024-08-13 19:51:35 -07:00
Ben Barham
467e528200
Merge remote-tracking branch 'origin/main' into manual-rebranch-merge
...
Conflicts:
- `lib/Serialization/ModuleFormat.h` bumped version to account for
differences between main and rebranch.
2024-08-09 15:22:39 -07: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
Ben Barham
cfbc007535
[rebranch] Do not serialize unstable hashes
...
https://github.com/llvm/llvm-project/pull/96282 changed
`get_execution_seed` to be non-deterministic. Use stable hashes instead.
2024-08-01 14:33:44 -07:00
swift-ci
a32c1896dc
Merge remote-tracking branch 'origin/main' into rebranch
2024-07-10 23:09:47 -07:00
Meghana Gupta
154989463b
Add support for lifetime dependence in parameter position
2024-07-10 14:20:03 -07:00
Ben Barham
b7954411ec
Merge remote-tracking branch 'origin/main' into manually-merge-main-to-rebranch
...
Conflicts:
- `include/swift/AST/PluginRegistry.h`
2024-06-27 14:56:11 -07:00
Akira Hatanaka
42bc49d3fe
Add a new parameter convention @in_cxx for non-trivial C++ classes that are passed indirectly and destructed by the caller ( #73019 )
...
This corresponds to the parameter-passing convention of the Itanium C++
ABI, in which the argument is passed indirectly and possibly modified,
but not destroyed, by the callee.
@in_cxx is handled the same way as @in in callers and @in_guaranteed in
callees. OwnershipModelEliminator emits the call to destroy_addr that is
needed to destroy the argument in the caller.
rdar://122707697
2024-06-27 09:44:04 -07:00
Xi Ge
736ccef626
Merge remote-tracking branch 'apple/main' into rebranch
2024-06-20 15:16:55 -07:00
Tim Kientzle
1098054291
Merge branch 'main' into tbkka-assertions2
2024-06-18 17:52:00 -07:00
swift-ci
37bf57ef27
Merge remote-tracking branch 'origin/main' into rebranch
2024-06-11 15:53:47 -07:00
Meghana Gupta
c14559173d
Add dependsOn(immortal)
2024-06-11 11:18:10 -07:00
swift-ci
be87ad7bcb
Merge remote-tracking branch 'origin/main' into rebranch
2024-06-06 10:35:38 -07:00
Meghana Gupta
af1d6017f9
Merge pull request #74132 from meg-gupta/deleteresultdependson
...
Remove resultDependsOn/resultDependsOnSelf
2024-06-06 10:23:31 -07:00
Tim Kientzle
1d961ba22d
Add #include "swift/Basic/Assertions.h" to a lot of source files
...
Although I don't plan to bring over new assertions wholesale
into the current qualification branch, it's entirely possible
that various minor changes in main will use the new assertions;
having this basic support in the release branch will simplify that.
(This is why I'm adding the includes as a separate pass from
rewriting the individual assertions)
2024-06-05 19:37:30 -07:00
swift-ci
a3c0c2f870
Merge remote-tracking branch 'origin/main' into rebranch
2024-06-05 14:36:10 -07:00
Meghana Gupta
470fa2f365
Remove resultDependsOn/resultDependsOnSelf
2024-06-05 11:36:16 -07:00
Alexis Laferrière
ab6a7017d0
Merge branch 'main' into serial-fix-control-block
2024-06-05 10:46:49 -07:00
swift-ci
2aff268350
Merge remote-tracking branch 'origin/main' into rebranch
2024-05-30 20:34:28 -07:00
Alejandro Alonso
324cb2df1f
Merge pull request #73955 from Azoy/show-me-those-moves
...
[IRGen] Add option for raw layout to move as its like type
2024-05-30 20:32:49 -07:00
swift-ci
b77fb4dc2e
Merge remote-tracking branch 'origin/main' into rebranch
2024-05-30 08:54:27 -07:00
Konrad `ktoso` Malawski
8145de2147
[DNM] Remove stray debugging comments
2024-05-30 21:28:38 +09:00
Alejandro Alonso
a9da08ccb6
Add option for raw layout to move as its like type
2024-05-28 14:34:22 -07:00
swift-ci
a29614d801
Merge remote-tracking branch 'origin/main' into rebranch
2024-05-28 07:33:12 -07:00
Konrad `ktoso` Malawski
168bc7b454
[Concurrency] Fix how we obtain DA-as-A conformance for cross module
...
Resolves rdar://127206143
2024-05-28 13:37:21 +09:00
Alexis Laferrière
998a40aed2
Serialization: Move SDK version to the end of the control block enum
2024-05-22 14:47:44 -07:00
Alexis Laferrière
76e7fa9372
Serialization: Move the distribution channel to the end of the control block enum
2024-05-22 14:47:44 -07:00
swift-ci
b20fedebc6
Merge remote-tracking branch 'origin/main' into rebranch
2024-05-18 02:54:31 -07:00
Michael Gottesman
d759ec97ea
Merge pull request #73696 from gottesmm/rdar128216574
...
[sending] Add support for 'sending'
2024-05-18 05:42:41 -04:00