Update changelog following import of indirect fields. (#6728)

Signed-off-by: Florent Bruneau <florent.bruneau@intersec.com>
This commit is contained in:
Florent Bruneau
2017-01-11 19:15:05 +01:00
committed by Jordan Rose
parent 1eb97b634b
commit a13c134521

View File

@@ -20,6 +20,39 @@ CHANGELOG
Swift 3.1 Swift 3.1
--------- ---------
* Indirect fields from C structures and unions are now always imported, while
they previously weren't imported if they belonged to an union. This is done by
naming anonymous fields. For example:
```c
typedef struct foo_t {
union {
int a;
double b;
};
} foo_t;
```
Get imported as:
```swift
struct foo_t {
struct __Unnamed_union___Anonymous_field0 {
var a : Int { get set }
var b : Double { get set }
}
var __Anonymous_field0 : foo_t.__Unnamed_union___Anonymous_field0
// a and b are computed properties accessing the content of __Anonymous_field0
var a : Int { get set }
var b : Double { get set }
}
```
Since new symbols are exposed from imported structure/unions, this may conflict
with existing code that extended C types in order to provide their own accessors
to the indirect fields.
* The `withoutActuallyEscaping` function from [SE-0103][] has been implemented. * The `withoutActuallyEscaping` function from [SE-0103][] has been implemented.
To pass off a non-escaping closure to an API that formally takes an To pass off a non-escaping closure to an API that formally takes an
`@escaping` closure, but which is used in a way that will not in fact `@escaping` closure, but which is used in a way that will not in fact