[ast] Represent a parameter's isolation at the SIL level.

I did this by adding flag on SILParamInfo.

rdar://121387872
This commit is contained in:
Michael Gottesman
2024-01-21 21:14:42 -08:00
parent 0e8ffef6cd
commit 6f3d45219a
30 changed files with 252 additions and 121 deletions

View File

@@ -58,7 +58,7 @@ const uint16_t SWIFTMODULE_VERSION_MAJOR = 0;
/// describe what change you made. The content of this comment isn't important;
/// it just ensures a conflict if two people change the module format.
/// Don't worry about adhering to the 80-column limit for this line.
const uint16_t SWIFTMODULE_VERSION_MINOR = 839; // @_implements
const uint16_t SWIFTMODULE_VERSION_MINOR = 840; // isolated SIL param info
/// A standard hash seed used for all string hashes in a serialized module.
///
@@ -400,6 +400,7 @@ enum class SILParameterDifferentiability : uint8_t {
/// module version.
enum class SILParameterInfoFlags : uint8_t {
NotDifferentiable = 0x1,
Isolated = 0x2,
};
using SILParameterInfoOptions = OptionSet<SILParameterInfoFlags>;