Fix types referenced via typedef not being accounted for when building rendering context

This commit is contained in:
Jan
2021-02-28 22:42:44 +01:00
parent 1164ec1777
commit 7b29d61bb5
3 changed files with 40 additions and 17 deletions

View File

@ -7,7 +7,14 @@ bool CreateMemberInformationPostProcessor::CreateMemberInformationForStructure(I
for(const auto& member : structure->m_definition->m_members)
{
StructureInformation* typeInfo = nullptr;
const auto* memberDefinition = dynamic_cast<const DefinitionWithMembers*>(member->m_type_declaration->m_type);
const auto* currentDefinition = member->m_type_declaration->m_type;
while(currentDefinition->GetType() == DataDefinitionType::TYPEDEF)
{
currentDefinition = dynamic_cast<const TypedefDefinition*>(currentDefinition)->m_type_declaration->m_type;
}
const auto* memberDefinition = dynamic_cast<const DefinitionWithMembers*>(currentDefinition);
if(memberDefinition != nullptr)
typeInfo = repository->GetInformationFor(memberDefinition);