diff --git a/IDEHelper/Compiler/BfIRBuilder.cpp b/IDEHelper/Compiler/BfIRBuilder.cpp index b4cd3342..30d46a59 100644 --- a/IDEHelper/Compiler/BfIRBuilder.cpp +++ b/IDEHelper/Compiler/BfIRBuilder.cpp @@ -335,12 +335,16 @@ int BfIRConstHolder::GetSize(BfTypeCode typeCode) } } - bool BfIRConstHolder::IsInt(BfTypeCode typeCode) { return (typeCode >= BfTypeCode_Int8) && (typeCode <= BfTypeCode_Char32); } +bool BfIRConstHolder::IsIntable(BfTypeCode typeCode) +{ + return (typeCode >= BfTypeCode_Boolean) && (typeCode <= BfTypeCode_Char32); +} + bool BfIRConstHolder::IsSigned(BfTypeCode typeCode) { return (typeCode == BfTypeCode_Int64) || @@ -2876,7 +2880,7 @@ void BfIRBuilder::CreateDbgTypeDefinition(BfType* type) int flags = 0; String fieldName = fieldDef->mName; if ((constant != NULL) && - ((IsInt(constant->mTypeCode)) || (IsFloat(constant->mTypeCode)))) + ((IsIntable(constant->mTypeCode)) || (IsFloat(constant->mTypeCode)))) { int64 writeVal = constant->mInt64; if (constant->mTypeCode == BfTypeCode_Float) diff --git a/IDEHelper/Compiler/BfIRBuilder.h b/IDEHelper/Compiler/BfIRBuilder.h index 212614ff..b9bdb861 100644 --- a/IDEHelper/Compiler/BfIRBuilder.h +++ b/IDEHelper/Compiler/BfIRBuilder.h @@ -901,6 +901,7 @@ public: void FixTypeCode(BfTypeCode& typeCode); int GetSize(BfTypeCode typeCode); static bool IsInt(BfTypeCode typeCode); + static bool IsIntable(BfTypeCode typeCode); static bool IsSigned(BfTypeCode typeCode); static bool IsFloat(BfTypeCode typeCode); const char* AllocStr(const StringImpl& str);