1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-08 03:28:20 +02:00

Debug expr fixes

This commit is contained in:
Brian Fiete 2019-12-24 10:32:20 -08:00
parent 69d16f87f6
commit 4087bf8e2a
4 changed files with 27 additions and 6 deletions

View file

@ -1057,10 +1057,23 @@ bool DbgType::IsValueType()
bool DbgType::IsTypedPrimitive()
{
PopulateType();
if (mTypeCode != DbgType_Struct)
return false;
return mTypeParam != NULL;
if (mTypeParam != NULL)
return true;
auto baseType = GetBaseType();
if (baseType == NULL)
return false;
if (!baseType->IsTypedPrimitive())
return false;
mTypeParam = baseType->mTypeParam;
return true;
}
bool DbgType::IsBoolean()
@ -2140,9 +2153,9 @@ DbgModule::DbgModule(DebugTarget* debugTarget) : mDefaultCompileUnit(this)
CREATE_PRIMITIVE(DbgType_RawText, "@RawText", "@RawText", "@RawText", bool);
CREATE_PRIMITIVE(DbgType_RegGroup, "@RegGroup", "@RegGroup", "@RegGroup", void*);
CREATE_PRIMITIVE_C(DbgType_i8, "int16_t", int16_t);
CREATE_PRIMITIVE_C(DbgType_i8, "int32_t", int32_t);
CREATE_PRIMITIVE_C(DbgType_i16, "int16_t", int16_t);
CREATE_PRIMITIVE_C(DbgType_i32, "int32_t", int32_t);
CREATE_PRIMITIVE_C(DbgType_i64, "__int64", int64);
CREATE_PRIMITIVE_C(DbgType_u64, "unsigned __int64", uint64);