Fix crash with unnamed unions
This commit is contained in:
parent
bfa1254eb7
commit
73dece7b58
|
@ -1450,14 +1450,21 @@ const Ident* Declaration::MangleIdent(void)
|
||||||
if (mQualIdent)
|
if (mQualIdent)
|
||||||
mMangleIdent = mQualIdent->PreMangle("struct ");
|
mMangleIdent = mQualIdent->PreMangle("struct ");
|
||||||
else
|
else
|
||||||
mMangleIdent = Ident::Unique("struct");
|
mMangleIdent = Ident::Unique("struct S", mUID);
|
||||||
|
}
|
||||||
|
else if (mType == DT_TYPE_UNION)
|
||||||
|
{
|
||||||
|
if (mQualIdent)
|
||||||
|
mMangleIdent = mQualIdent->PreMangle("union ");
|
||||||
|
else
|
||||||
|
mMangleIdent = Ident::Unique("union U", mUID);
|
||||||
}
|
}
|
||||||
else if (mType == DT_TYPE_ENUM)
|
else if (mType == DT_TYPE_ENUM)
|
||||||
{
|
{
|
||||||
if (mQualIdent)
|
if (mQualIdent)
|
||||||
mMangleIdent = mQualIdent->PreMangle("enum ");
|
mMangleIdent = mQualIdent->PreMangle("enum ");
|
||||||
else
|
else
|
||||||
mMangleIdent = Ident::Unique("enum");
|
mMangleIdent = Ident::Unique("enum E", mUID);
|
||||||
}
|
}
|
||||||
else if (mType == DT_TYPE_VOID)
|
else if (mType == DT_TYPE_VOID)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue