Files
tubestation/ipc/ipdl
Nika Layzell 020a2c779a Bug 1907412 - Stop using AlignedStorage in IPDL unions, r=ipc-reviewers,mccr8
In more recent versions of C++, it is possible to declare a C union with
non-POD members, so long as there is an explicit destructor/constructor
responsible for managing the members.

This patch switches to using the variant types directly within the
union, rather than using AlignedStorage to store inline members. This
requires some tweaks to how the union is declared (specifically, it must
be an anonymous inline union so that it shares the main union type's
constructor/destructor, otherwise explicit ctors/dtors would need to be
declared for the bare union type).

Overall, this change should make no functional difference.

Differential Revision: https://phabricator.services.mozilla.com/D216329
2024-07-15 21:33:37 +00:00
..