1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-09 12:02:21 +02:00

Make .Underlying always const on const enum values

This commit is contained in:
Brian Fiete 2025-02-23 14:34:55 -08:00
parent c495d4434a
commit 68edae2a35

View file

@ -20073,7 +20073,16 @@ BfTypedValue BfExprEvaluator::GetResult(bool clearResult, bool resolveGenericTyp
mModule->EmitObjectAccessCheck(mPropTarget);
}
SetAndRestoreValue<BfEvalExprFlags> prevExprFlags(mBfEvalExprFlags);
auto callFlags = mPropDefBypassVirtual ? BfCreateCallFlags_BypassVirtual : BfCreateCallFlags_None;
auto methodDef = methodInstance.mMethodInstance->mMethodDef;
if ((methodDef->mMethodDeclaration == NULL) && (mPropTarget.mValue.IsConst()) &&
(methodDef->mName == "get__Underlying"))
{
mBfEvalExprFlags = (BfEvalExprFlags)(mBfEvalExprFlags | BfEvalExprFlags_Comptime);
}
mResult = CreateCall(mPropSrc, mPropTarget, mOrigPropTarget, matchedMethod, methodInstance, callFlags, mIndexerValues, NULL);
}
}