Commit Graph

4 Commits

Author SHA1 Message Date
Anthony Latsis
b58d10c682 Add missing new method to clang::serialization::DataStreamBasic{Reader,Writer} subclasses
See https://github.com/llvm/llvm-project/pull/134142
2025-06-17 12:06:38 +01:00
Ben Barham
ff42c48db4 [next] Handle new BTFTagAttributedType
Introduced in llvm/llvm-project
3251ba2d0fcf5223fce3e270b91c54f548664b4e.
2022-05-05 16:25:10 -07:00
Varun Gandhi
ad89b31e2b [Serialization] Update Clang type serialization for LLVM-side change.
Corresponding LLVM change in https://reviews.llvm.org/D94196.
2021-01-07 12:52:12 -08:00
John McCall
faee21b626 Implement Swift serialization and deserialization of Clang types.
As part of this, we have to change the type export rules to
prevent `@convention(c)` function types from being used in
exported interfaces if they aren't serializable.  This is a
more conservative version of the original rule I had, which
was to import such function-pointer types as opaque pointers.
That rule would've completely prevented importing function-pointer
types defined in bridging headers and so simply doesn't work,
so we're left trying to catch the unsupportable cases
retroactively.  This has the unfortunate consequence that we
can't necessarily serialize the internal state of the compiler,
but that was already true due to normal type uses of aggregate
types from bridging headers; if we can teach the compiler to
reliably serialize such types, we should be able to use the
same mechanisms for function types.

This PR doesn't flip the switch to use Clang function types
by default, so many of the clang-function-type-serialization
FIXMEs are still in place.
2020-02-06 22:09:00 -05:00