Use the [[gnu::packed]] C++ attribute.
Suggested by: Maxime Coste <mawww@kakoune.org>
This commit is contained in:
parent
6e686af8b5
commit
aa88f459ff
|
@ -14,14 +14,6 @@
|
||||||
#include <cstring>
|
#include <cstring>
|
||||||
#include <limits>
|
#include <limits>
|
||||||
|
|
||||||
#ifndef __packed
|
|
||||||
#if defined(__GNUC__)
|
|
||||||
#define __packed __attribute__((packed))
|
|
||||||
#else
|
|
||||||
#define __packed
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
namespace Kakoune
|
namespace Kakoune
|
||||||
{
|
{
|
||||||
|
|
||||||
|
@ -82,7 +74,7 @@ struct ParsedRegex
|
||||||
};
|
};
|
||||||
|
|
||||||
using NodeIndex = uint16_t;
|
using NodeIndex = uint16_t;
|
||||||
struct Node
|
struct [[gnu::packed]] Node
|
||||||
{
|
{
|
||||||
Op op;
|
Op op;
|
||||||
bool ignore_case;
|
bool ignore_case;
|
||||||
|
@ -90,7 +82,7 @@ struct ParsedRegex
|
||||||
Codepoint value;
|
Codepoint value;
|
||||||
Quantifier quantifier;
|
Quantifier quantifier;
|
||||||
uint16_t filler = 0;
|
uint16_t filler = 0;
|
||||||
} __packed;
|
};
|
||||||
static_assert(sizeof(Node) == 16, "");
|
static_assert(sizeof(Node) == 16, "");
|
||||||
|
|
||||||
Vector<Node, MemoryDomain::Regex> nodes;
|
Vector<Node, MemoryDomain::Regex> nodes;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user