From 7ff87c2b73a83c1eb5e4de1b23d79f3ba2881f7e Mon Sep 17 00:00:00 2001 From: Jan Date: Sat, 20 Feb 2021 03:40:35 +0100 Subject: [PATCH] fix setting custom align --- .../Parsing/Header/Block/HeaderBlockStruct.cpp | 6 ++++++ .../Parsing/Header/Block/HeaderBlockUnion.cpp | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/src/ZoneCodeGeneratorLib/Parsing/Header/Block/HeaderBlockStruct.cpp b/src/ZoneCodeGeneratorLib/Parsing/Header/Block/HeaderBlockStruct.cpp index 00063f26..6678a4ad 100644 --- a/src/ZoneCodeGeneratorLib/Parsing/Header/Block/HeaderBlockStruct.cpp +++ b/src/ZoneCodeGeneratorLib/Parsing/Header/Block/HeaderBlockStruct.cpp @@ -66,6 +66,12 @@ void HeaderBlockStruct::OnClose(HeaderParserState* state) for (auto& member : m_members) structDefinition->m_members.emplace_back(std::move(member)); + if(m_has_custom_align) + { + structDefinition->m_alignment_override = static_cast(m_custom_alignment); + structDefinition->m_has_alignment_override = true; + } + state->AddDataType(std::move(structDefinition)); if (m_is_typedef) diff --git a/src/ZoneCodeGeneratorLib/Parsing/Header/Block/HeaderBlockUnion.cpp b/src/ZoneCodeGeneratorLib/Parsing/Header/Block/HeaderBlockUnion.cpp index c83de8d2..7a032a30 100644 --- a/src/ZoneCodeGeneratorLib/Parsing/Header/Block/HeaderBlockUnion.cpp +++ b/src/ZoneCodeGeneratorLib/Parsing/Header/Block/HeaderBlockUnion.cpp @@ -66,6 +66,12 @@ void HeaderBlockUnion::OnClose(HeaderParserState* state) for (auto& member : m_members) unionDefinition->m_members.emplace_back(std::move(member)); + if (m_has_custom_align) + { + unionDefinition->m_alignment_override = static_cast(m_custom_alignment); + unionDefinition->m_has_alignment_override = true; + } + state->AddDataType(std::move(unionDefinition)); if (m_is_typedef)