mirror of
https://github.com/beefytech/Beef.git
synced 2025-06-08 03:28:20 +02:00
Improved comptime circular data reference issues
This commit is contained in:
parent
910f560380
commit
79e98fe9f7
7 changed files with 161 additions and 25 deletions
|
@ -833,12 +833,13 @@ class CeBuilder
|
|||
{
|
||||
public:
|
||||
CeBuilder* mParentBuilder;
|
||||
CeMachine* mCeMachine;
|
||||
CeMachine* mCeMachine;
|
||||
CeFunction* mCeFunction;
|
||||
BeFunction* mBeFunction;
|
||||
CeOperand mReturnVal;
|
||||
BeType* mIntPtrType;
|
||||
int mPtrSize;
|
||||
int mRecursiveDepth;
|
||||
|
||||
String mError;
|
||||
BeDbgLoc* mCurDbgLoc;
|
||||
|
@ -862,6 +863,7 @@ public:
|
|||
{
|
||||
mParentBuilder = NULL;
|
||||
mPtrSize = 0;
|
||||
mRecursiveDepth = -1;
|
||||
mCeFunction = NULL;
|
||||
mBeFunction = NULL;
|
||||
mCeMachine = NULL;
|
||||
|
@ -1126,6 +1128,7 @@ public:
|
|||
int mReflectTypeIdOffset;
|
||||
int mExecuteId;
|
||||
CeEvalFlags mCurEvalFlags;
|
||||
int mRecursiveDepth;
|
||||
|
||||
// These are only valid for the current execution
|
||||
ContiguousHeap* mHeap;
|
||||
|
@ -1248,6 +1251,7 @@ public:
|
|||
int mRevisionExecuteTime;
|
||||
int mCurFunctionId;
|
||||
int mExecuteId;
|
||||
int mCurRecursiveDepth;
|
||||
CeAppendAllocInfo* mAppendAllocInfo;
|
||||
|
||||
CeContext* mCurContext;
|
||||
|
@ -1308,6 +1312,9 @@ public:
|
|||
CeContext* AllocContext();
|
||||
void ReleaseContext(CeContext* context);
|
||||
BfTypedValue Call(CeCallSource callSource, BfModule* module, BfMethodInstance* methodInstance, const BfSizedArray<BfIRValue>& args, CeEvalFlags flags, BfType* expectingType);
|
||||
|
||||
BfError* FailCurrent(BfModule* srcModule, const StringImpl& error, BfAstNode* refNode);
|
||||
void FailCurrentMoreInfo(const StringImpl& error, BfAstNode* refNode);
|
||||
};
|
||||
|
||||
NS_BF_END
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue